假设我有一个主题分支fix-bug-#25
在几个提交之前已经与master
分歧:
o--o--o master
\
o--o--o bug-fix-#25
在我bug-fix-#25
的第三次提交中,我修复了错误并想要合并分支
进入master
。我应该首先结帐主人,将主题分支合并到主人
git checkout master
git pull
git merge bug-fix-#25
或者我应该检查主题分支并从master中取出,然后检查master并与主题分支合并?
git checkout fix-bug-#25
git pull
git pull origin master
git checkout master
git pull
git merge fix-bug-#25
最好的方法是什么,最大限度地减少合并冲突的数量?
答案 0 :(得分:1)
tl; dr:Imho你应该将较小的更改合并到master
,但在主题分支上完成更大的更改。
这是政策,品味和环境的问题。
我真的不喜欢太多的合并提交,这就是为什么我要走第一条路线。 (我也是git pull --rebase
因为那个,但那是另一个故事。)你应该测试master
是否仍然可以作为ajp15243提及你的修正案(尽管这是政策问题)好吧)但也可以在master
上完成。如果您的修复程序有小问题,您可以在合并之前重置为,修复分支并再次合并。
但是,如果修复程序存在很大问题,例如,因为master
在您的主题分支上引入了很多更改,并且需要修复大量工作/提交,我会首先将master
合并到主题分支中。这有助于保持master
清洁。