与主分支合并后保持分支的“独立性”

时间:2020-06-27 18:06:00

标签: git github

我在主分支(M)上进行编码,并随即添加提交。上周,我开始计划发布包含新功能的子集,因此我决定从主分支上的较早提交中分离出发布分支(R)。随后在发行分支上发现了一些错误,因此发行分支中的修复程序必须合并回到主分支中。

M: ----------------*------------------
                   |
                   |
                   R:--------------------------------

我创建了一个拉取请求,并将release分支合并回了main分支。但是,现在我在发行代码中发现了另一个错误。我想修复该错误并创建一个无错误的发行版,而在主分支中没有其他功能。但是由于合并的结果,release分支看起来已经变得与main分支相同。我如何找回原来的发行分支?

并且将来如何处理这种情况,以便即使将发布的更改合并到主分支中,发行分支也不会更改?

1 个答案:

答案 0 :(得分:0)

从左(较旧的提交)到右(较新的提交),更准确的表示是:

x--x--x--x--x--x--x     (main)
          \
           r--r--r--r   (release)

如果您已将发行版合并到主发行版:

x--x--x--x--x--x--x---M (main)
          \          /   
           r--r--r--r   (release)

如果已在发行版中修复了新的错误,则新的PR将允许您将其合并回main

x--x--x--x--x--x--x---M---M (main)
          \          /   /
           r--r--r--r --r   (release)

但是在那些合并的情况下,release不应与main相同。