我正在努力了解将同一代码的不同距离合并到git repository中的正确和最佳方法。
我在两台本地存储库不同的电脑上打开了相同的代码。我已经从不同的方面修改了这段代码(通常它们不会重叠/产生问题(,我想将这两个代码合并为一个代码,其中包含两个编辑。
现在,我正在阅读rebase命令以及merge指令。似乎rebase更适合我的用例,因为一旦需要合并同一存储库上的多个分支,就会使用merge。
我该如何处理需要合并的两个不同的存储库?
仓库都是本地
您需要知道自己在做什么。下面是我如何做到这一点的一个更先进的方法。专业人士,请不要苛刻地评判——当然,可能有更简单的方法。
-
在某些服务器上设置git存储库。例如,GitHub。
-
将远程添加到两个本地存储库:
git remote add github git@github.com:user/repo.git
-
将更改从本地存储库推送到远程:
git add * git commit -m "first commit" git --set-upstream-to=github/master git push
-
在其他本地存储库中提交更改并合并来自远程的最新代码:
git add * git commit -m "second commit" git fetch github git merge github/master # resolve conflicts
-
将更改从其他本地存储库推送到远程
git --set-upstream-to=github/master git push
-
如果你的电脑#1需要保持同步,并且在电脑#2推送某些东西后还没有进行任何更改,只需拉动更改即可:
git pull
希望这能有所帮助。一般来说,我建议提前考虑这些情况,并从一开始就设置存储库。