所以,昨天我发布了一个关于一些奇怪冲突的问题,当我试图将上游分支重新定位到我的本地主题分支时。
最后,我使用git rebase --merge upstream
并解决了自上次 rebase 以来我没有接触过的文件中的很多冲突。
在这种情况下,我对 rebase 的理解是它将我的提交与该主题分支分离,应用来自上游分支的提交,然后将我的提交(作为补丁)应用到这些之上。因此,它最终成为一个快进操作。我不明白的是......为什么我会与来自上游的提交发生合并冲突。那些也作为补丁应用吗?我认为只是......在来自同一分支的先前提交之上“焊接”一些提交的行为?
我问这个是因为我在我没有接触过的文件中有很多冲突。哦,我每天都用这个上游分支做 rebase。
更新
我刚刚注意到从上游带到我的主题分支的一些提交更改了它们的 SHA-1 id。有谁知道什么可能导致 Git 这样做?会不会是--merge
开关?
我的 git 版本是 1.5.6.5