我在主分支(M)上进行编码,并随即添加提交。上周,我开始计划发布包含新功能的子集,因此我决定从主分支上的较早提交中分离出发布分支(R)。随后在发行分支上发现了一些错误,因此发行分支中的修复程序必须合并回到主分支中。
M: ----------------*------------------
|
|
R:--------------------------------
我创建了一个拉取请求,并将release分支合并回了main分支。但是,现在我在发行代码中发现了另一个错误。我想修复该错误并创建一个无错误的发行版,而在主分支中没有其他功能。但是由于合并的结果,release分支看起来已经变得与main分支相同。我如何找回原来的发行分支?
并且将来如何处理这种情况,以便即使将发布的更改合并到主分支中,发行分支也不会更改?
答案 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
相同。