首页 > 解决方案 > 为什么 git pull origin master 创建合并提交

问题描述

我的远程同事总是在没有实际原因的情况下创建虚拟合并提交——它们包含的代码与他上次拉出后已经推送到 repo 的代码完全相同。我想阻止这种情况,但无法真正弄清楚他是如何做到的 - 他说他唯一做的就是git pull origin master并且出于某种原因它会将远程代码作为他自己的。任何想法如何发生?我想我会去tmate他的终端检查自己。

标签: git

解决方案


的默认行为git pull是合并。

将来自远程存储库的更改合并到当前分支中。在其默认模式下,git pull 是 git fetch 后跟 git merge FETCH_HEAD 的简写。

https://git-scm.com/docs/git-pull

要更改它,您可以添加--rebase( git pull --rebase),或者只需将 git 配置为始终变基(如果这是您想要的默认行为)。

将以下内容添加到您的.gitconfig.

[pull] 
  rebase = true

或者从命令行配置它:

git config --global pull.rebase true

推荐阅读