假设我遇到这样的情况:
a -- b -----------------c -- d -- e <-- Master
\
f ------------l <-- Branch1
\ /
g -- h -- i <-- Branch2
通过以下方式将i
与f
合并在一起的地方:
git merge --no-ff
好吧,现在我想将rebase
从Branch1
到master
。
如果我使用git rebase master Branch1
,则结果为:
a -- b -- c -- d -- e <-- Master
\
f -- g -- h -- i <-- Branch1
它只是合并而忽略了我以前的--no-ff
。
问题:
是否有类似git rebase --no_ff ...
的指令?
我想要实现的是:
a -- b -- c -- d -- e <-- Master
\
f ------------l <-- Branch1
\ /
g -- h -- i <-- Branch2
在网络上查找(包括stackoverflow),我找不到任何有用的信息。
答案 0 :(得分:1)
解决方案
-p
的{{1}}选项旨在解决此问题。
这应该有效:
git rebase
来自git rebase -p master Branch1
:
git rebase -h
注意事项
感谢@andreee指出-p, --preserve-merges
try to recreate merges instead of ignoring them
中记录的这些问题:
git rebase --help
与--preserve-merges
结合通常不是一个好主意