不知道更好,我总是幸福地使用git pull
(没有参数)来获取远程更新。
现在我们正在使用分支,这又回到了困扰我的地方。
执行完之后git pull
,我注意到我的本地 master 也已与其他分支合并,而在远程,分支未合并。
我试图弄清楚这是怎么发生的,这样我就可以避免将来再次这样做,但到目前为止还没有运气。
我没有在我的 .git/config 文件中放任何奇怪的东西。
所以当我做 git pull 时,它应该将其他分支与当前分支合并?
否:git pull
只会将当前签出的分支与其远程跟踪分支“ origin/branch
”合并。
看:
另请参阅“ “跟踪分支”和“远程跟踪分支”</a>”:
看到这个答案:
用最简单的术语来说,“git pull”会执行“git fetch”,然后是“git merge”。
在未来,只是git fetch
代替git pull
.
[原始答案]您所经历的可能是正确的行为(以及您想要的行为)。
想象一下这种情况:开发人员 X 已经完成了她分支中的一些重要功能。她将它合并回她的主人。
当她推动它时,当你拉动时会发生什么?
当前的解决方案是更新您的主分支副本,以便您查看并获取她的所有工作(功能+合并)。
当您在 master 分支上开发时,这可能会导致问题。
解决方案是让每个开发人员始终在一个分支中工作。要么为每个开发人员创建一个分支,要么为每个特性/错误创建一个分支。
这样,每个开发人员都可以决定何时与 master 合并(您的工作 -> master)以及何时使用 master 中的任何更改更新您的工作分支。
更多细节: