Git Pull vs Git Rebase

我是Git的noob,并试图了解git pullgit rebase之间的区别。 有人可以提供一个示例何时使用哪个选项,因为我觉得这两个选项都用于相同的目的。


git pullgit rebase不可互换,但它们紧密相连。

git pull从远程获取当前分支的最新更改并将这些更改应用到分支的本地副本。 通常这是通过合并完成的,即将本地更改合并到远程更改中。 所以git pull类似于git fetch & git merge

重新合并是合并的替代方法。 不是创建一个组合两个分支的新提交,而是将其中一个分支的提交移动到另一个分支的提交。

你可以使用rebase来代替合并( git pull --rebase )。 您所做的本地更改将在远程更改的基础上进行重新设置,而不是与远程更改合并。

Atlassian作为一些关于合并与重组的优秀文档。


git-pull - 从另一个存储库或本地分支GIT PULL获取并与其集成

基本上你是拉远程分支到你的本地,例如:

git pull origin master

将主分支拉入本地存储库

git-rebase - 转发端口本地提交到更新的上游头部GIT REBASE

这是将您的本地更改放在由其他用户远程完成的更改之上。 例如:

  • 您已在本地分支上进行了一些更改,例如称为SOME-FEATURE
  • 与此同时,你的朋友正在研究其他功能,并将他的分支合并为主人
  • 现在你想在你的本地分支上看到他和你的变化。 那么你签出master分支:

    git checkout master
    

    那么你可以拉:

    git pull origin master
    

    然后你去你的分支:

    git checkout SOME-FEATURE
    

    你可以通过rebase master来获取最新的变化,并将你的分支提交放在最前面:

    git rebase master
    

    我希望现在对你更清楚些。

    链接地址: http://www.djcxy.com/p/45089.html

    上一篇: Git Pull vs Git Rebase

    下一篇: Difference between git pull and git pull