生成diff文件:
svn diff > xxx.diff
生成 patch:
同事 A 运行如下命令生成 patch:
svn diff > aaa.patch
应用 patch:
同事 B 运行如下命令应用 patch:
patch –p0 < ../aaa.patch
当他 review 完代码,想删除该 patch 时, 可运行:
patch –p0 -R < ../aaa.patch
man了下patch,了解了p0的含义:
-pnum or --strip=num
Strip the smallest prefix containing num leading
slashesfrom each file name found in the patch file. A
sequence of one or more adjacentslashes is counted as
a singleslash. This controls how file namesfound in
the patchfile are treated, in case you keep your files
in adifferent directory than the person who sent out
thepatch. For example, supposing the filename in the
patchfile was
/u/howard/src/blurfl/blurfl.c
setting-p0 gives the entire file name unmodified, -p1
gives
u/howard/src/blurfl/blurfl.c
withoutthe leading slash, -p4 gives
blurfl/blurfl.c