diff 和 patch的组合使用
2010-06-24 11:32
363 查看
参考:
"Introduction: Using diff and patch (tutorial)" http://www.linuxtutorialblog.com/post/introduction-using-diff-and-patch-tutorial
1. 一般的patch方式
生成patch >
diff originalfile updatedfile > patchfile.patch
还原 >
patch originalfile -i patchfile.patch -o updatedfile
2. 带上下文信息的patch方式
一般的patch方式生成的信息不带上下文信息,只带行信息。如果不小心选错了原始文件,patch后的结果被破坏也许还不知道,这样不安全。
生成patch >
diff -c originalfile updatefile > patchfile.patch
还原 >
patch -i patchfile.patch -o updatefile
这里没写出原始文件名,是因为patchfile.patch里面已经携带了。当然也可以不指定输出文件名,如果这样的话,原始文件直接被更新。
3. 目录及其文件的patch
生成patch >
diff -cr originaldirectory/ updatedirectory/ > patchfile.patch
还原 >
比如把orignaldirectory 和 patchfile.patch拷贝到一个目录下,运行:
patch -p0 -i patchfile.patch
其中 -p 用于告诉patch要去掉路径中多少'/'。
4. 恢复到原始文件
如果想恢复到patch之前,接上面的例子,可以运行下面的command:
patch -p0 -R -i patchfile.patch
5. unified format
只被GNU diff和patch支持,类似context format,但是更紧凑
比如生成kernel的patch方式,通常如下:
diff -Nur /patch/to/original/kernel /path/to/your/kernel > changes.patch
其中-N: Treat absent files as empty
"Introduction: Using diff and patch (tutorial)" http://www.linuxtutorialblog.com/post/introduction-using-diff-and-patch-tutorial
1. 一般的patch方式
生成patch >
diff originalfile updatedfile > patchfile.patch
还原 >
patch originalfile -i patchfile.patch -o updatedfile
2. 带上下文信息的patch方式
一般的patch方式生成的信息不带上下文信息,只带行信息。如果不小心选错了原始文件,patch后的结果被破坏也许还不知道,这样不安全。
生成patch >
diff -c originalfile updatefile > patchfile.patch
还原 >
patch -i patchfile.patch -o updatefile
这里没写出原始文件名,是因为patchfile.patch里面已经携带了。当然也可以不指定输出文件名,如果这样的话,原始文件直接被更新。
3. 目录及其文件的patch
生成patch >
diff -cr originaldirectory/ updatedirectory/ > patchfile.patch
还原 >
比如把orignaldirectory 和 patchfile.patch拷贝到一个目录下,运行:
patch -p0 -i patchfile.patch
其中 -p 用于告诉patch要去掉路径中多少'/'。
4. 恢复到原始文件
如果想恢复到patch之前,接上面的例子,可以运行下面的command:
patch -p0 -R -i patchfile.patch
5. unified format
只被GNU diff和patch支持,类似context format,但是更紧凑
比如生成kernel的patch方式,通常如下:
diff -Nur /patch/to/original/kernel /path/to/your/kernel > changes.patch
其中-N: Treat absent files as empty
相关文章推荐
- 使用diff和patch制作及打补丁
- diff和patch简单使用
- diff和patch使用指南
- diff和patch使用指南
- 补丁的制作和使用:diff和patch
- Linux下使用diff和patch制作及打补丁(已经实践可行!)
- Linux下diff与patch命令的配合使用
- diff和patch使用指南
- Linux下命令diff与patch的配合使用
- linux中使用diff和patch维护源码包
- diff和patch使用指南
- diff和patch使用指南
- diff和patch使用
- diff/patch 的使用
- diff&patch 使用
- diff和patch使用指南
- diff 命令和patch文件的使用
- 几个频繁使用的命令tar/diff/patch/grep/find简单使用
- 使用diff和patch修改文件
- 【转】Linux下使用diff和patch制作及打补丁