如果我有一个master
分支。
然后我签出一个work
分支并进行了很棒的更改和一些提交。
然后我必须修复一些东西,所以我返回master
并签出一个名为 的分支fix
,修复我需要做的事情,并将其合并到master
.
我的问题是,我应该然后合并并继续,还是应该继续我所在的位置并master
在完成后合并它?work
work
我发现自己不得不回到我工作的所有分支并更新(合并更改)每个分支。
我觉得最好尽快合并,但后来发现自己不得不不断更新我工作的所有分支。这是不必要的吗?
如果我有一个master
分支。
然后我签出一个work
分支并进行了很棒的更改和一些提交。
然后我必须修复一些东西,所以我返回master
并签出一个名为 的分支fix
,修复我需要做的事情,并将其合并到master
.
我的问题是,我应该然后合并并继续,还是应该继续我所在的位置并master
在完成后合并它?work
work
我发现自己不得不回到我工作的所有分支并更新(合并更改)每个分支。
我觉得最好尽快合并,但后来发现自己不得不不断更新我工作的所有分支。这是不必要的吗?
参考 Nive 的总是很棒的 Git 分支模型:
你看,你应该合并fix
(not master
) 到work
(aka develop
) 分支。
你应该多久合并一次master
?当然,每个稳定版本。
还有其他疑问吗?看图片。:P
资料来源: http: //nvie.com/posts/a-successful-git-branching-model/
你实际上不想做你正在做的“反向合并”。您想要集成或发布候选分支,您可以在其中合并任何您想要查看的内容。谷歌“每个功能的分支”,看看如何让您的工作保持井井有条、同步和灵活。
当主人向前移动时,我们:
git fetch # get the latest master
git checkout my_branch # work in my_branch
git rebase master # replay my work on top of newer master
与更改后的 master 保持同步(例如,当 afix
应用到它时),然后当我们去合并分支时
git checkout master # Do the work in master
git merge my_branch # Bring in my branch
我们的目标是快速合并分支,以避免为更改进行大量更新。
我们每天只在 2 或 3 个分支上工作,当分支在开发人员之间共享时,我们还会让它们保持最新:
get fetch # Gets the latest version of branches including my_branch
git checkout my_branch # Do the work in the my_branch
git reset --hard origin/my_branch # Reset to the latest version fetch in.