git merge origin / repo和git merge origin repo之间有区别吗?

时间:2018-01-26 08:15:36

标签: git git-merge

我使用后者主要是因为它看起来更具可读性。我不确定该命令是否相同,它似乎是从远程执行合并,但大多数示例包括斜杠。

我的合并工作流程:

git fetch origin
git pull origin mybranch
git merge origin otherbranch

这是对的吗?

2 个答案:

答案 0 :(得分:2)

git help merge并未提及将遥控器作为其中一个参数提及的可能性。它只是说未破灭的参数是提交。因此,origin被理解为origin上的默认分支的顶部,加上本地分支otherbranch(您可以将多个提交合并在一起)。

答案 1 :(得分:1)

  

我使用后者主要是因为它看起来更具可读性

我对这个问题感到惊讶,因为如果你一直这样做,你现在应该能够看到它没有达到预期的效果。

您的命令不会被解释为';这不是公认的合并语法。 git merge <remote> <branch>不是与远程交互的命令之一。

而不是merge

此处git merge <branch1> <branch2><branch1>。假设您没有名为origin的ref,但确实有一个名为origin的远程配置,这将被解释为“origin的默认分支。假设您有一个名为{{1}的引用{1}}(您可以查看origin或类似的内容),这是remotes/origin/HEAD的默认分支。

所以你正在做的是章鱼合并,合并

  • 名为git branch -a |grep HEAD的引用,或者更可能是origin遥控器的默认分支 - 可能是origin,和
  • 名为origin
  • 的本地参考

进入当前分支(您之前的origin/master命令已合并到otherbranch)。

从远处的礁石pull合并到当前分支中的情况看起来很简单,而且大部分都是微不足道的。它会产生错误并且合并失败的情况很多。

我并不是指任何冒犯,但我真诚地相信,如果你非常重视调整语法以使你看起来“稍微更具可读性”,那么命令行可能不适合你。