diff -u -d xxx xxx 即可
可以再加-r,这样就可以直接针对两个目录做diff比较并生成patch,也就是diff -u -d -r <dir A> <dir B>
注意:<dir A>是没有修改过代码的目录,<dir B>是修改过代码的目录。否则弄反了将来patch的时候会出现:
Reversed (or previously applied) patch detected! Assume -R? [n]
生成patch之后,打patch一般是:
1. 解开需要patch的源代码包
2. cd进入源代码目录
3. patch -p1 < <patch file path>
-p1就是忽略patch file中diff命令行中两个diff对象path的第一级path,一般也就是源代码的根目录了。这样逻辑上就通了。