我制作了一个git repo foo
然后开始工作。二十次提交之后,我将repo中的所有文件复制到一个新目录bar
并创建了一个新的git repo。我现在在bar
回购邮件中有二十次提交。
如何合并两个回购,这样我就有了一个干净的历史记录?我想摆脱bar
回购中的第一次提交,并将其余部分附加到foo
回购。
答案 0 :(得分:2)
您可以将第二个存储库作为远程添加到第一个存储库,然后将所有这些提交重新绑定到foo
存储库的一个分支上。
在foo
存储库中执行此操作以添加bar
存储库
$ git remote add bar <path-to-bar>
$ git fetch bar
现在找到你要改变的提交(在你的情况下是第二个)并执行
$ git rebase master <hash-of-second-commit>
根据这两个存储库的不同,一切都可以干净利落,或者您可能需要解决合并冲突。