Git 在特殊情况下如何合并(或重组)两个分支机构以获得发展
我的当前树状态如下所示:Git 在特殊情况下如何合并(或重组)两个分支机构以获得发展,git,merge,repository,git-branch,branching-and-merging,Git,Merge,Repository,Git Branch,Branching And Merging,我的当前树状态如下所示: Q-W-E (Br2) / ----A-B-C-D-E-F-G-H (develop) \ X-Y-Z (Br1) 现在,我需要将这两个分支合并到develope(换句话说develope应该包含提到的两个新特性(分支Br1和Br2) 问题是在合并Br2之前,我应该合并Br1。原因是:Br1包含分支Br2上的功能所需的一些代码(分支Br2上的功能即将完成-我需要添加一个小命令
Q-W-E (Br2)
/
----A-B-C-D-E-F-G-H (develop)
\
X-Y-Z (Br1)
现在,我需要将这两个分支合并到develope
(换句话说develope
应该包含提到的两个新特性(分支Br1
和Br2
)
问题是在合并Br2
之前,我应该合并Br1
。原因是:Br1
包含分支Br2
上的功能所需的一些代码(分支Br2
上的功能即将完成-我需要添加一个小命令,它将使用分支Br1
上的一些代码,必须调用一个函数-此函数在分支Br1
上实现)
此外,与develope
相比,这两个分支并不新鲜
我一步一步地寻求帮助(甚至是精确的命令),因为我是git的新手,我知道犯错误很容易。显然,我有一些经验,我知道合并、重基、提交等等,但是这种经验太差,无法在存储库上进行实验 让我们从树开始:
Q-W-R (Br2)
/
----A-B-C-D-E-F-G-H (develop)
\
X-Y-Z (Br1)
(我将第二个E重命名为R)
简单而直接的合并方式是:
git签出开发
git merge Br1
Q-W-R (Br2)
/
----A-B-C-D-E-F-G-H-M1 (develop)
\ / ^
X-Y-Z (Br1) HEAD
Q-W-R (Br2)
/ \
----A-B-C-D-E-F-G-H-M1-M2 (develop)
\ / ^
X-Y-Z (Br1) HEAD
git merge Br2
Q-W-R (Br2)
/
----A-B-C-D-E-F-G-H-M1 (develop)
\ / ^
X-Y-Z (Br1) HEAD
Q-W-R (Br2)
/ \
----A-B-C-D-E-F-G-H-M1-M2 (develop)
\ / ^
X-Y-Z (Br1) HEAD
可能只是一个打字错误或类似的错误,但是:您有两个
E
提交。也许br2应该指向Q-W-R
的R
?