根据我发现的一个教程:https://www.atlassian.com/git/tutorials/syncing/git-pull
git拉-重基追加提交到您的本地树。
A - B - C (origin/master)
/
D - E - F - G (local master)在本地进行git拉-重基之后,教程就应该是这样的:
A - B - C (origin/master)
/
D - E - F - G - A - B - C (local master)我希望是这样的:
A - B - C (origin/master)
/
D - A - B - C - E' - F' - G' (local master)我是不是遗漏了什么?或者他们错了?
发布于 2019-08-20 07:36:02
你是对的。
这一页是错误的,不仅是图表,还包括它的文本:
在这个图表中,我们现在可以看到重基拉不会创建新的H提交。相反,重基复制了远程提交A--B--C,并将它们附加到本地源/主提交历史记录中。
手册一页更清楚:
-r,-rebase=false\true_交互式的 如果为true,则在获取后将当前分支重新定位在上游分支的顶部。如果存在与上游分支相对应的远程跟踪分支,并且自上次获取以来对上游分支进行重基,则重基将使用该信息来避免对非本地更改进行重基。
发布于 2019-08-20 08:07:04
如果你有这个。
A - B - C (origin/master)
/
D - E - F - G (master)在git pull --rebase之后,假设没有获取新的提交,您将得到以下内容。
D - A - B - C [origin/master]
\
E' - F' - G' [master]E,F和G在origin/master上被重放。
注意,只有一个A、B和C。Remotes和本地分支都共享相同的提交树。
https://stackoverflow.com/questions/57568638
复制相似问题