给出具有以下文件结构的git存储库:
<repo root>
foo
example.md
我已将example.md
的内容提交给Hello world
。如果导航到foo
目录并更改为example.md
,则可以使用git diff --relative > d.diff
生成相对差异,内容如下:
diff --git a/example.md b/example.md
index 802992c..fb5067b 100644
--- a/example.md
+++ b/example.md
@@ -1 +1 @@
-Hello world
+Hello again
如果现在我检出example.md
来撤消更改,然后尝试对git apply d.diff
应用diff(仍在foo
目录中),该命令会静默退出并且不应用任何更改。如何应用此相对差异或以可以应用的方式生成相对差异?
答案 0 :(得分:0)
这不能直接回答为什么git apply
在这里不起作用的问题,但是基于https://stackoverflow.com/a/42386570/1340041中的答案,我找到了一种解决方法:patch -p1 < d.diff