我有一个主分支和一个功能分支。功能分支有几处更改,但主分支有许多更改,例如从存储库中删除10个项目。问题是如何将功能分支合并回主分支?
1)与master合并功能,然后使用功能
进行主合并OR
2)直接将master与功能合并
答案 0 :(得分:2)
checkout master
checkout -b develop (assuming you don't already have a develop branch)
merge --no-ff your-feature-branch
解决代码中的任何冲突。 测试,测试。
checkout master
merge --no-ff develop
然后部署您的代码。
我really like this branching model因为它始终让我在功能分支上构建功能,对开发进行最终测试。而且只有融入主人。主人不会发生任何提交。
答案 1 :(得分:1)
不要做后退合并。集成在集成分支上。在发布候选分支上测试已完成的分支。只有在发布候选版本时才合并为master。您合并已部署的候选发布版。
更多相关内容:
https://plus.google.com/109096274754593704906/posts/R4qkeyRadLR
<强>更新强>
我在这里重写了这个:
答案 2 :(得分:-1)
两者都导致master
的状态相同。只是feature
分支在第一种情况下与master
处于同一状态,在第二种情况下保持不受影响。
如果你问哪一个要做,那么先做第一个是首选方式。您应该首先合并master“into”功能,以便合并后的任何错误都不会影响master。保持master
干净。这也确保了Master中没有merge conflicts
。
这是我的一般做法:将master合并到任何功能分支中并检查一切是否正常。如果有什么东西坏了,请修理它。然后再次合并最新的主人。只有在合并的分支看起来很好之后,才会将其放入主数据库中。
答案 3 :(得分:-1)
我会在master上添加功能,然后在master
之上快速转发功能(功能已签出)
git rebase master