有人能解释一下
git merge origin master
和git merge origin/master
之间的区别吗?我不小心执行了git merge origin master
。如果它们是不同的,重置该合并的命令是什么?经过我的测试,$git merge origin master
等同于 $git merge origin/HEAD master
。
这表示将两个分支(origin/HEAD 和 master)合并到当前分支中,与 $git merge origin/master
非常不同。
但通常情况下,主分支(master branch)和 origin/HEAD 在同一提交线上,因此这两个命令的执行结果相同。
我尝试了一种情况,即 master 和 origin/HEAD 分岔(diverged),使用 $git merge origin master
的结果如下:
*-. 33f82cd (HEAD, test) merge
|\ \
| | * 46d0c92 (master) 22
| * | 9d9f51c (origin/test, origin/HEAD) 11
| |/
* | 5ecfebd (origin/master) modify 2.txt
|/
* 14949b6 remove 1.txt
origin
转换为提交引用,假设您想要它的HEAD,并再次假设/查找origin
是您的远程之一。它还展示了那个空格的影响。 - Philip Oakley