git pull --rebase origin master 是什么意思?

4

我想了解在git pull命令中使用--rebase选项的优势是什么,我们在何时何地必须使用此选项,以及何时不必使用此选项?


1
你了解合并的工作原理吗?最好在学习如何重置操作影响提交结构之前先了解它。 - Simon Whitehead
1个回答

3
当您的更改不值得使用单独的分支时,您应该使用git pull --rebase
确实,为什么不呢?这更清晰,不会对您的提交强加逻辑分组。
好吧,我想它需要一些澄清。在Git中,你被鼓励分支和合并。你的本地分支,其中你拉取更改,和远程分支,实际上是不同的分支,而git pull是关于合并它们的。这是合理的,因为你不经常推送,并且通常在它们构成一个完成的功能之前积累了许多更改。
然而,有时候,由于任何原因,你认为如果这两个——远程和本地——是一个分支,实际上会更好。就像在SVN中一样。这就是git pull --rebase发挥作用的地方。你不再合并——你实际上是在远程分支的顶部提交。这就是它实际上的含义。
是否危险取决于你是否将本地和远程分支视为不可分割的东西。有时候是合理的(当你的更改很小或者如果你处于强大的开发阶段的开头时,重要的更改通过小的提交带来)。有时候不是(当你通常会创建另一个分支,但你太懒了)。但这是一个不同的问题。 链接

我需要在 --rebase 中添加 origin master 吗?我一直看到 git pull --rebase 就足够了。 - Mohammad Faisal
3
如果您没有指定<remote>和<branch>,则它将尝试使用默认的跟踪远程/分支。通常origin master已经是主分支的跟踪分支。因此,在那里您不需要它。 - Pankaj Singhal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接