运行'git apply'时出错

hap*_*497 11 git

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

$ git apply 0001-my.patch
error: patch failed:test.xml:114
error: text.xml: patch does not apply
Run Code Online (Sandbox Code Playgroud)

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

感谢您的任何帮助.

Von*_*onC 12

你可以试试:

git am -3
Run Code Online (Sandbox Code Playgroud)

当补丁不能完全应用时,请回到3向合并(git amdoc)


qneill评论中提到git apply现在有一个--3way选项:

您现在可以应用补丁而无需减少上下文.
因为它会在索引中留下冲突的一半并允许您手动解决工作树中的冲突," --3way"表示" --index",并且不能与" --cached"或" --reject"一起使用.

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

git apply当修补程序不完全适用于您拥有的版本时," "学习了摆动基础版本并执行三向合并.

  • 从1.7.11.1开始,看起来git-apply现在有一个--3way选项(参见http://git.661346.n2.nabble.com/PATCH-v4-00-19-quot-git-apply-3way- QUOT-td7562763.html) (3认同)

Mic*_*ker 2

嗯,补丁包含有关应将哪些内容更改为哪些内容的信息。如果第一个内容与文件内容不匹配,则补丁不适用。