当我在Ubuntu上键入git pull origin master
时,它会将更改从远程存储库提取到我的本地存储库中,并且工作正常。
但是,如果我在Windows上使用它(使用git bash),它会将更改作为合并提交(就像我接受拉取请求一样)。所以,即使我只是更新我的本地存储库,下次我推送它时,拉提交将在那里。
有没有办法从Windows中删除此行为?我希望它像Ubuntu一样,拉动不会导致新的提交。
答案 0 :(得分:4)
git pull
等于git fetch
加git merge
,除非它是快进,不需要合并,或者您已配置pull.rebase=true
,在这种情况下,rebase是完成而不是合并。
所以有两种可能性:
git fetch
并选择git rebase
(但请注意rebase
规则!)。pull.rebase=true
但不是Windows。我的建议无论如何都不是git pull
。相反,只需做git fetch
,然后根据需要进行操作。
git pull
这两个提交时,就在中间。我做了git config pull.rebase true
,问题就结束了。