为什么在重放已存在的提交时使用 git pull --rebase 失败?

5
当我执行"git pull --rebase remote branch"命令时,它会将我的HEAD回滚到共享根,并开始回放同时发生的所有远程提交。为什么这些提交有时会失败?它们是在干净的工作空间上进行的清洁提交,这不几乎就是rebase的目的吗?

请参考https://dev59.com/K3A75IYBdhLWcg3w4tV7#3052118,以更好地了解在rebase期间重放在哪个之上的内容。 - VonC
1个回答

4

您确定不是您提交失败了吗?

假设您正在一个分支上工作,并对特定文件进行了一系列更改。

现在,您想将您的提交变基到远程仓库的最新代码上。

所有您的更改都会被删除,然后应用所有他们的更改,最后再将您的更改重新应用在其之上。那么如果他们删除了您正在工作的文件呢?或者进行了其他使您的更改无法应用的更改呢?


2
kwatford 是正确的。你最终会遇到冲突,因为你所做的更改是基于过期版本的文件。当 git 尝试应用你的更改时,它会发现你的更改试图改变代码与最初相比不同的部分,因此将其设置为冲突。 - Derick Bailey

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