如果合并解析为快进,则应该没有差异,但如果不是这样:
- 如果您使用
git merge
,您将有一个合并提交和来自两个分支的所有提交。
- 如果你使用
git reset
,你将只有提交gitlab/master
,没有合并提交。来自master
缺席的提交gitlab/master
将被取消提交(重置),但它们的内容将出现在工作目录中。
您可以自己尝试一下,使用以下两个场景:
(初始化,常见的两种情况,我们用master
asgitlab/master
和branch1
as master
)
# Common commit
git init
echo a > a; git add .; git commit -m"a"
# Commit on branch1
git checkout -b branch1
git init
echo b > b; git add .; git commit -m"b"
# Second commit on master
git checkout master~1
echo c > c; git add .; git commit -m"c"
(合并场景)
git checkout branch1
git merge master
(重置场景)
git checkout branch1
git reset master
另请注意,选项--ff
和--mixed
都是默认选项,可以省略。