我可以使用git pull
提取更改,但它会合并我的本地提交。是否有git rebase
等效物,我可以用它进行远程更改?
答案 0 :(得分:28)
是的,你可以git pull --rebase
。
当您使用git config branch.autosetuprebase always
跟踪分支时,您还可以将其设置为默认拉动行为。如果您要对正在跟踪的特定类型的分支执行此操作,请将“始终”替换为“远程”或“本地”。
现在你所要做的只是git pull
。
如果由于某种原因你想进行合并,你可以git pull --no-rebase
。
希望这有帮助。
更新:请参阅以下评论,了解如何在现有分支机构上执行此操作。
答案 1 :(得分:12)
您可以使用autosetuprebase
配置选项来改变每个 pull.rebase
的行为(而不仅仅是新创建的分支),而不是git pull
:
[pull]
rebase = true
不同之处在于,这将适用于非跟踪分支机构以及您在启用autosetuprebase
之前设置的任何分支机构。因此,如果您真的希望pull --rebase
永远是默认值,那么pull.rebase
就是最佳选择!
答案 2 :(得分:4)
我通常使用fetch / rebase组合,因此我的当前(本地)工作保持在顶部:
git fetch
git rebase origin/develop
答案 3 :(得分:0)
将默认行为从merge
更改为rebase
在git> = 1.7.9中:
git config --global pull.rebase true
删除全局