我正在尝试应用从某个git仓库生成的补丁。补丁上下文行看起来像这样:
else if ( o is Item )
在我的代码中,它看起来像这样
else if (o is Item)
当我应用补丁时。
$ git apply -v --check --directory=myroot --ignore-space-change --ignore-whitespace ../patches/0003-some-name.patch
它说
error: while searching for:
提供上下文块,该块仅在上面提到的空格方面存在差异。当我修复空格问题时,问题消失了。有没有一种方法可以指定上下文行内的空格可以被忽略?
git apply
如何工作,但我原以为忽略空格对你的例子不起作用。如果你假设它在忽略空格时使用某种形式的“标记化”,那么第一行有 7 个“标记”,第二行有 5 个。“你需要以某种方式解析你正在使用的语言,以识别这两行在语法上是相同的。” - icabod