我有一个主分支和一个功能分支。功能分支有几个变化,但主分支有许多变化,如从存储库中删除10个项目。问题是如何将功能分支合并回主分支?如何执行合并?
1)与主合并特征,然后用特征掌握
OR
2)合并主与特征直接
我有一个主分支和一个功能分支。功能分支有几个变化,但主分支有许多变化,如从存储库中删除10个项目。问题是如何将功能分支合并回主分支?如何执行合并?
1)与主合并特征,然后用特征掌握
OR
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因为它总是让我在功能分支上构建功能,对开发进行最终测试。只有合并成主人。主人没有提交。
两个结果在相同的状态为master
。在第一种情况下,feature
分支的状态与master
的状态相同,在第二种情况下不受影响。
如果您要问哪一个要做,那么先做首选是首选方法。您应该首先将主“合并”功能合并,以便合并后的任何错误不会影响主控。保持master
清洁。这也确保了有史以来没有merge conflicts
。
这是我的一般做法:将主合并到任何功能分支并检查一切工作正常。如果有问题,请修复。然后再次合并最新的主人。只有在合并后的分支看起来不错,才会把它交给主人。
我会重订功能上主之上,然后快进功能上主
的顶部(与功能签出)
git rebase master
不要做回合并。集成在集成分支上。在发布候选分支上测试已完成的分支。只有在您释放候选人时才合并为主人。您合并了已部署的发布候选版本。
更多关于此这里:
https://plus.google.com/109096274754593704906/posts/R4qkeyRadLR
UPDATE
我改写了这个在这里:
该工作流程在我提供的链接中进行了改进。关键是每个功能都在同一个地方开始。其中一些步骤更加明确,并且对rerere的角色进行了很好的定义。 – 2012-02-01 16:33:28
嗨布赖恩。这些命令实际上是选项1)吗? – mynkow 2012-02-03 06:04:59
是的,mynkow我认为他们以不同的方式获得同样的影响。 – 2012-02-03 18:38:06