从git中拉取故事分支的最佳实践
我们最近开始使用GIT,我们的流程针对每个任务/故事(敏捷)我们创建了一个分支。
在某些情况下,已经合并的分支需要从发布版本中提取。 做这个的最好方式是什么?
来自TFS的我们使用标签,很容易将特定项目指向较旧的变更集,但使用GIT我不确定如何最好地执行此操作。 看起来好像是最后一次推送会很容易,但如果在我必须撤消所有这些操作之后有10次推送,然后再按照我想要的方式再次执行拉取请求?
您可以在合并之前返回分支状态以恢复合并分支:
git reflog
git checkout <last_feature_commit_number>
git checkout -b <feature_branch>
然后在发布分支上更新这个新分支
git pull --rebase origin <release_branch>
如果你有冲突,解决它,在阶段添加文件并执行git rebase --continue
您可以查看准备与git log <release_branch>..<feature_branch>
合并的提交
最后将这个分支合并到发布分支中:
git checkout <release_branch>
git merge <feature_branch>
假设您的本地机器承载合并提交。 如果没有,你可以尝试获得远程reflog,但我不知道它是否总是可能的(请参阅git我可以查看远程的reflog?并且可以在git中删除后恢复分支吗?)
我建议你使用git flow。
git流程模型是一个合适的模型,并会回答你所有的问题。
阅读所有关于它的地方http://nvie.com/posts/a-successful-git-branching-model/,一旦你完成了阅读,你将能够更好地理解下面的图表:
git流程的“catch”就是有完整的脚本来处理你在这个过程中所做的每一步,所以很难犯错误。
链接地址: http://www.djcxy.com/p/49835.html