git fetch的优点; git rebase origin master

时间:2012-08-15 10:55:15

标签: git github

  

可能重复:
  git pull VS git fetch git rebase

我看到一些git项目建议您通过

更新项目
git fetch; git rebase origin master

相比,这样做有什么好处
git pull

github上的开源项目的角度来看,因为你总是信任遥控器。

1 个答案:

答案 0 :(得分:9)

如果您没有对分支的本地副本进行任何更改,则这两组命令将产生完全相同的历史记录。当您对当前分支的副本进行本地提交时,差异就会发挥作用。

如果您执行git pull,则对远程所做的任何更改都将合并到您的本地分支中,并且您将在历史记录中进行合并提交。另一方面,如果您执行提取后跟一个rebase(或git pull --rebase),您的本地更改将在远程更改之上重播。这样可以获得更清晰的历史记录,因为您可以减少合并提交,使历史记录变得混乱。

由于新提交之前的历史记录与遥控器上的历史记录相匹配,因此它也经常使您的更改更容易合并到上游。