【问题标题】:Git, working with two branches and two separate teams, merging both branches to masterGit,与两个分支和两个独立的团队合作,将两个分支合并为 master
【发布时间】:2012-07-21 00:12:24
【问题描述】:

这是我公司常见的场景,目前使用的是Svn:

有两个团队致力于一个项目。一个“维护”团队在一个分支上进行一些错误修复,另一个“支持”团队在另一个分支上处理新功能。维护团队需要在支持团队完成他们的新功能之前将他们的更改转移到生产中,因此他们完成了错误修复并将他们的分支合并回主干。几天后,支持团队完成新功能并合并回主干,解决任何冲突(如果存在)。

对于这个使用 Git 的场景,典型的工作流程(和使用的命令)是什么?

【问题讨论】:

  • 不确定您所说的已解决是什么意思 - 这是所有源代码管理系统都处理的场景。您的支持团队要么定期从维护分支中拉出并在冲突发生时解决冲突,要么按照您的描述进行操作并在之后进行同步。
  • 感谢您的回复!我的问题真的是:使用 Git 的这个场景的典型工作流程(和使用的命令)是什么?
  • 顺便说一句,您尝试使用分支的方式是错误的。查看这个答案以获得更多解释:stackoverflow.com/questions/10598262/….

标签: git svn


【解决方案1】:

不知道最常见的方法是什么,我会这样做:

  • 维护将其更改合并到master:
    git checkout master
    git merge maintenance
  • 支持基于master的变基
    git rebase master
  • 支持合并到master
    git checkout master
    git merge support

这样,master 首先收到修复,然后support 团队可以检查他们的更改是否明确(即没有冲突)应用,完成后将他们的support 分支也合并到master

如果您正在寻找有效(且流行)的 Git 分支模型:
http://nvie.com/posts/a-successful-git-branching-model/

在那里,Vincent Driessen 描述了他如何处理多个开发分支、修补程序、发布分支等。

【讨论】:

  • 完美。所以维护团队的每个成员也会从“维护”分支创建一个分支来实现每个错误修复,然后合并回“维护”,对每个功能的支持也是如此,对吧?
  • @vgardner:是的。就是这样。
猜你喜欢
  • 2021-01-18
  • 2016-01-11
  • 2013-11-09
  • 2014-09-23
  • 2013-05-23
  • 2019-04-15
  • 2013-04-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多