diff命令,甚至使用Git选项,包括DCS上常用的路径前缀:如何从Mercurial生成一个干净的补丁?
--- a/file.ext
+++ b/file.ext
因此应用如果您需要使用-p0的-p1不是这样的补丁。
有什么办法可以从Mercurial生成干净的补丁?
diff命令,甚至使用Git选项,包括DCS上常用的路径前缀:如何从Mercurial生成一个干净的补丁?
--- a/file.ext
+++ b/file.ext
因此应用如果您需要使用-p0的-p1不是这样的补丁。
有什么办法可以从Mercurial生成干净的补丁?
Mercurial不会发出-p0补丁。正如@Ringdig指出的那样,它们很少是你想要的。
您可以修改此答案中给出的查看脚本:transforming patch strip level以删除第一个目录而不是添加它。
像这样的东西应该工作(未经测试):
sed \
-e 's!^--- a/!--- !' \
-e 's!^+++ b/!+++ !' \
< p1.patch \
> p0.patch
假设你的“P1补丁”是一个文件名为p1.patch,输出将在p0.patch
几乎每个人都使用 - p1补丁。你认为拥有-p0补丁的好处是什么? – Ringding