我有一个git repo(主分支)和另一个分支(x)。我最近一直在更新x
分支,现在在github上我收到了github x
branch { {1}}
今天我更新了主分支,我现在希望主分支和This branch is 22 commits ahead and 3 commits behind master
分支处于同一级别。我应该采取什么行动,不会弄乱我的回购?
答案 0 :(得分:0)
您有两种选择,可以将master
和x
合并在一起,也可以将x
重新定位到master
。这两个选项都会导致工作树的最终状态相同,但合并选项会在您的情况下产生合并提交,而rebase将保持线性历史记录。
关于rebase的警告,但是:如果你与其他人分享你的分支,不要改变(除非你知道如何修复其他人的分支)。 Rebase会重写历史记录,这会导致共享分支的其他人出现同步问题,除非他们知道如何从rebase中恢复。
要合并:
git checkout x
git merge master
git checkout master
git merge x
git push origin master x
或者,改变:
git rebase master x
git checkout master
git merge x
git push origin master x