我目前是唯一一位从事我从前任接手的项目的开发人员。当我接手这个项目时,它还没有受到源代码控制。因此,我创建了一个新的 git 存储库,对状态进行了初始提交,并从此开始对其进行处理。
但最近我在备份中发现了同一个项目的一个古老版本,它实际上是一个 git 存储库,但是,由于我的前任对 git 一无所知,他从其中复制了所有文件并在没有源代码控制的情况下对其进行处理。
所以,我现在有两个 git 存储库,一个包含截至某一日期的所有更改,另一个包含从以后的日期到现在为止的所有更改。但在这两者之间,存在着没有源代码控制的差距。
是否可以合并这两个存储库,使其看起来始终作为一个存储库存在,但在没有源代码控制的情况下进行的更改作为其间的一个重大提交?
当然,使用ours
战略!
请按照以下步骤操作(以#
是评论):
# Navigate to your updated project
cd your-updated-project
# Add a remote pointing to the other git repository
# (it can be a local path or an url; I used a local path)
git remote add old-project ../path/to/the/old/git/repo
# Get the content from that repo
git fetch old-project
# Merge the the old repo master branch in your current branch,
# BUT keeping your recent changes (see -s ours)
git merge old-project master -s ours
如果你想合并旧 git repo 中的另一个分支,请执行以下操作git merge old-project <branch-name> -s ours
(代替<branch-name>
与您要合并的分支名称)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)