如何在Git中的几个发布分支上轻松应用bug修复?

时间:2009-12-04 13:10:57

标签: git branch

我一直在使用git一段时间用于我的单人开发,但直到现在我还没有遇到任何棘手的分支问题而且我似乎已经忘记了一些基本的东西,我在阅读后无疑会“知道”使用Git Book实现语用版本控制。

我经常在我的网站上发布的内容之前发布几个版本,因此当出现错误报告时,我只将它们应用于当前的主分支,而不是在下一个发布的版本中修复它们。当然,我想改变它以便更快地修复。

假设1.0刚刚发布,1.1即将发布,但我已经开始研究1.3,例如

1.0 - released  
1.1 - finished  
1.2 - finished  
1.3 - in development  

错误报告出现..通常这将在1.3中修复,但如何在1.1中修复它?

据我所知,在svn和其他“传统”源代码控制系统中,我需要分支B.1.1和B.1.2并依次将更改应用于每个分支,然后从每个分支构建并最终应用修复主分支。

我似乎记得git做了一些聪明的事情:我分支B.1.1,在那里进行更改,做{something}和B.1.2并使用修复程序自动更新主分支。这是可能的还是我想象{something}?

2 个答案:

答案 0 :(得分:6)

在这种情况下,正确的方法是:

  • 确保已创建B1.1和B1.2(以隔离各自分支中的最终修订)
  • 在主人身上应用你的补丁
  • 承诺B1和B2的樱桃选择

正如this thread中提到的那样:

  

确保master不会对旧分支进行回归。 (除非您想将所有更改从一个分支合并到另一个分支,而不是仅仅单个提交,否则不要使用合并   你提到。)

答案 1 :(得分:0)

在这种情况下如何修复B1.1,将B1.1合并到B1.2,然后将B1.2合并到B1.3?