当我尝试将上游分支重新绑定到主题分支时,我遇到了问题。工作流程如下:
git checkout upstream
git pull origin upstream
git checkout topic
git rebase upstream
结果如下:
First, rewinding head to replay your work on top of it...
Applying Refactored database access and added logging
error: patch failed: path/to/file1.ext:21
error: path/to/file1.ext: patch does not apply
error: path/to/file2.ext:3
error: path/to/file2.ext: patch does not apply
fatal: mode change for path/to/file3.ext, which is not in current HEAD
Repository lacks necessary blobs to fall back on 3-way merge.
Cannot fall back to three-way merge.
Patch failed at 0001.
昨天发生在我身上,我完成了我的研究并没有发现任何内容,所以最后我使用git merge upstream
代替git rebase upstream
并且事情有效。真正的问题是今天也出现了错误。由于昨天的合并,我已经与上游同步了。另外,自昨天以来,我没有修改过我队友介绍的文件。
我的Git版本是1.5.6.5(并且真的不想在这台机器上更新它,我担心会产生不必要的后果)。
答案 0 :(得分:10)
我发现使用--merge
选项进行变基会有助于此类情况。 (尽管如此,Git还会做一个改变。)
答案 1 :(得分:0)
我有同样的事情,结果是由于消息中有差异的提交消息引起的。
也许试试:git log --grep ++
...看看是不是......