除了产生的git树结构之外,git pull与git fetch + git rebase之间有什么重要的区别吗?

时间:2017-07-25 15:39:43

标签: git git-rebase pull git-fetch git-status

我曾在一个开发团队工作过,他们首选使用git fetch然后git rebase的方法而不是git pull的方法,然后git推送任何更改以避免合并冲突。

除了视觉树结构的差异之外,还有一个特定的原因吗?根据{{​​3}} fetch& rebase

  

“将生成更清晰的历史记录,无需额外的合并提交”

但是这两种方法之间是否还有其他理由选择其中一种?

1 个答案:

答案 0 :(得分:1)

git pull = git fetch + git merge

git pull --rebasegit pull -r = git fetch + git rebase

不多也不少;-)没有魔法。 所以你可以做第二个。

在两个不同的步骤中进行获取然后rebase的主要优点是第一个没有修改你的本地分支(绝对没有风险),所以你每次都可以这样做(你甚至可以创建一个运行的任务它定期)。

一旦获取,您可以查看历史记录,将其与您的提交进行比较,然后决定您要做什么以及何时...