【发布时间】:2021-09-09 03:15:44
【问题描述】:
有人给我发了一个补丁并告诉我使用以下命令应用它:
patch -Np1 -i file.patch
出于好奇,我试图找出 -Np1 选项的作用,但补丁手册页对此非常不透明。谁能解释这是做什么的?谢谢。
【问题讨论】:
-
是-N和-p1的组合。
有人给我发了一个补丁并告诉我使用以下命令应用它:
patch -Np1 -i file.patch
出于好奇,我试图找出 -Np1 选项的作用,但补丁手册页对此非常不透明。谁能解释这是做什么的?谢谢。
【问题讨论】:
这是两个标志。 -N 和 -p1。
-N or --forward
Ignore patches that seem to be reversed or already applied. See
also -R.
和
-pnum or --strip=num
Strip the smallest prefix containing num leading slashes from each
file name found in the patch file. A sequence of one or more adja-
cent slashes is counted as a single slash. This controls how file
names found in the patch file are treated, in case you keep your
files in a different directory than the person who sent out the
patch. For example, supposing the file name in the patch file was
/u/howard/src/blurfl/blurfl.c
setting -p0 gives the entire file name unmodified, -p1 gives
u/howard/src/blurfl/blurfl.c
without the leading slash, -p4 gives
blurfl/blurfl.c
and not specifying -p at all just gives you blurfl.c. Whatever you
end up with is looked for either in the current directory, or the
directory specified by the -d option.
【讨论】: