kka*_*sko 4 git-rebase fast-forward bitbucket-server
我正在探索 Bitbucket Server 上可能的合并策略,其中一个策略引起了我的注意:“变基并合并”rebase + merge --no-ff
我知道大多数关于合并策略的争论都围绕着 rebase与merge 展开。这种合并策略似乎是rebase和merge。它是否正确?与仅变基或仅合并相比,这会带来什么优势?
Ian*_*ald 14
“变基和合并”策略通常就是人们所说的“变基”。它也只是表明接下来会发生什么。当您使用 时--no-ff,它会进行合并提交。如果没有它,您将获得快进,因此两个引用都将指向相同的提交,并且它隐藏了您根本已经分支的事实。
并入:BA
A *---* A *---*---*
\ merge -> \ /
B *---* B *---*
Run Code Online (Sandbox Code Playgroud)
重新定位B到A:
A *---* A *---*
\ rebase -> \
B *---* B *---*
Run Code Online (Sandbox Code Playgroud)
变基并合并 ( --no-ff)B到A:
A *---* A *---* A *---*-------*
\ rebase -> \ merge -> \ /
B *---* B *---* --no-ff B *---*
Run Code Online (Sandbox Code Playgroud)
变基并合并 ( --ff)B到A:
A *---* A *---* A,B *---*---*---*
\ rebase -> \ merge ->
B *---* B *---* --ff
Run Code Online (Sandbox Code Playgroud)