首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"git merge origin/master“和"git merge master”有什么区别?

"git merge origin/master“和"git merge master”有什么区别?
EN

Stack Overflow用户
提问于 2019-06-11 19:43:29
回答 1查看 191关注 0票数 0

当我试图将我的开发分支与主分支同步时,我遇到了一个问题,现在我正试图了解发生了什么。主要的问题是,我尝试了两种方法,每种方法都有不同的结果。

在签出到我的开发分支之后,我使用了命令"git merge branch /master“。我得到了一些git冲突并修复了它们。几分钟后,我尝试使用以下命令重新同步分支:

代码语言:javascript
复制
1. git checkout master
2. git pull
3. git checkout dev_branch
4. git pull
5. git merge master

使用这些命令后,我得到了其他git冲突(在不同的文件上),但与前面的不同。

为什么我会得到不同的冲突?我必须再一次提到,我在很短的一段时间后重新同步了分支,并且我非常确定在此期间远程主机没有得到任何更新。这两种方法有什么区别吗?如果是,是什么?

EN

回答 1

Stack Overflow用户

发布于 2019-06-11 20:53:15

您的本地origin/master可能不是最新的。

git pull的一个(预期的)效果是更新origin/master

您可以通过查看本地dev_branch的历史来确认这一点:

如果您查看分支的历史记录(使用git-kraken,或gitg,或gitk,或git log --graph --oneline),您应该会看到两个不同的合并:

代码语言:javascript
复制
  * (dev_branch) Merge branch 'master' into dev_branch   # <- merge2
  |\
  | * (master, origin/master) commit aaa                 # <- aaa
  | |
     ...
  |
  *  | Merge banch 'origin/master' into dev_branch       # <- merge1
  |\ /
  | * commit bbb                                         # <- bbb
  | |
     ...

bbb是第一次合并时本地origin/master的状态,aaagit pull之后的主状态(它可能与origin/master相同)。

另一种可能是您本地的master分支与origin/master不同。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56542922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档