运行'git apply'时出错

时间:2009-12-03 21:07:04

标签: git

我可以告诉我,当我尝试时,如何解决'补丁不适用'错误 'git apply-patch'?

$ git apply 0001-my.patch
error: patch failed:test.xml:114
error: text.xml: patch does not apply

我的本​​地目录中有'test.xml'。当我做'git status'时,它表明我没有本地更改。

感谢您的帮助。

3 个答案:

答案 0 :(得分:12)

您可以尝试:

git am -3
  

如果补丁不能完全应用,请退回3向合并(git am doc


qneillthe comments中提及git apply now have a --3way option

  

您现在可以在不减少上下文的情况下应用补丁   由于它会在索引中保留冲突的一半并允许您手动解决工作树中的冲突,“--3way”表示“--index”,并且不能与“--cached”一起使用或“--reject”。

您可以在git1.7.12 release note(2012年8月,原始问题后不到3年)中看到它

  

git apply”学会了摆弄基础版本并在补丁不完全适用于您拥有的版本时执行三向合并。

答案 1 :(得分:2)

嗯,补丁有关于应该改变什么的信息。如果第一个与文件内容不匹配,则补丁不适用。

答案 2 :(得分:0)

或者您可能还想要使用主要或原始

进行变基
git rebase origin

在您开始应用其他人的补丁之前,只是为了确保您与最新的更改保持同一轨道。