Linux diff/patch的用法

来源:互联网 发布:网络射击游戏有哪些 编辑:程序博客网 时间:2024/04/28 01:27
也许只是我一个人比较笨,每次碰到bug,虽然有人给出补丁(patch),但是却不知道怎么使用。Manual Page ( man patch )也只给出 patch -p(num) <patchfile这样的用法,具体也不知道怎样确定num,如果你也有这样的疑惑,请继续阅读,下面的内容来自这里

建立patch文件:

diff -Naur olddir newdir > new-patch
- or -
diff -Naur oldfile newfile >new-patch

-p0 还是-p1? patch 命令的目录层次:

-p选项可以选择性地截断patchfile的目录层次。例:如果你的patchfile的头象下面这样:
--- old/modules/pcitable Mon Sep 27 11:03:56 1999+++ new/modules/pcitable Tue Dec 19 20:05:41 2000
使用 -p0 将从你的当前路径下寻找一个“new"的子文件夹,然后在"new"下面寻找“modules”,然后在其下面寻找"pcitable"。

使用 -p1 将截断第一层目录,也就是说patch将直接在当前路径下寻找"modules",然后是"pcitable"

依次类推。

实际上的确很简单。


From : http://hi.baidu.com/issaria/blog/item/b04527ec816967d72f2e2184.html