有人给我发了一个补丁,告诉我使用命令:
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.