在Git文档中,Git rebase指定何时存在公共提交,将跳过此常见提交:
如果上游分支已包含您所做的更改(例如, 因为你邮寄了一个上游应用的补丁,然后那个 提交将被跳过。例如,运行'git rebase master` 以下历史(其中A'和A介绍相同的一组 更改,但有不同的提交者信息):
并想象它:
A---B---C topic
/
D---E---A'---F master
成为:
B'---C' topic
/
D---E---A'---F master
我的问题是:当您进行合并而不是使用rebase时,在这种情况下会发生什么?
编辑:更重要的是......提交A做了一次还是两次?
答案 0 :(得分:2)
它会变成,
A---B---C topic
/ \
D---E---A'---F -- F' master
https://www.kernel.org/pub/software/scm/git/docs/git-merge.html
它说Except in a fast-forward merge (see above), the branches to be merged must be tied together by a merge commit that has both of them as its parents.
显然这不是一个ff。