diff和patch 打补丁
2014-08-12 23:05
113 查看
在Linux环境下,有两个工具用来给project打补丁,即diff和patch
diff具有比较功能。可以使用man命令查看其使用方法。
常用选项:
-r 是一个递归选项
-N 确保命令正确执行,文件不存在视为空
-u 使用统一格式
patch 用来打补丁。
-pnum:
-p0 根据补丁中完整路径查找要打补丁的文件
-p1忽略第一层目录
……
源文件
新文件:
比较两个文件,生成patch
打上补丁:
此时file1.c的内容变变成file2.c的内容
如果两个文件在不同目录,比如一个在remote,一个在local目录
则
diff
diff具有比较功能。可以使用man命令查看其使用方法。NAME
diff - compare files line by line
SYNOPSIS
diff [OPTION]... FILES
常用选项:
-r 是一个递归选项
-N 确保命令正确执行,文件不存在视为空
-u 使用统一格式
patch
patch 用来打补丁。NAME
patch - apply a diff file to an original
SYNOPSIS
patch [options] [originalfile [patchfile]]
but usually just
patch -pnum <patchfile
-pnum:
-p0 根据补丁中完整路径查找要打补丁的文件
-p1忽略第一层目录
……
简单的例子
源文件./file1.c
#include <stdio.h>
int main()
{
printf("This is version 1!\n");
return 0;
}
新文件:
./file2.c
#include <stdio.h>
int main()
{
printf("This is version 2!\n");
return 0;
}
比较两个文件,生成patch
$ diff -uN file1.c file2.c >> file.patch
打上补丁:
$ patch -p0 < file.patch
此时file1.c的内容变变成file2.c的内容
如果两个文件在不同目录,比如一个在remote,一个在local目录
则
$ diff -uN Remote/file1.c Local/file2.c >> file.patch
//在file.patch目录下
$ patch -p0 < file.patch
相关文章推荐
- 打补丁patch 和 diff 命令的使用
- 关于Linux中的补丁命令diff和patch
- 通过diff及patch制作使用补丁
- Linux-学习patch命令打补丁,diff命令制作补丁(3)
- 补丁制作与应用—diff和patch命令的使用
- linux 补丁创建及使用原理(diff and patch)
- PATCH 将DIFF生成的补丁应用修补程序
- 补丁的制作和使用:diff和patch
- diff命令和patch命令,生成补丁和打补丁
- git apply、git am打补丁.diff 和 .patch【转】
- 差异文件(diff)和补丁文件(patch)简介
- 【linux】利用patch和diff命令制作文件补丁
- diff patch制作补丁打补丁
- diff & patch 制作及打补丁
- 制作补丁diff和打上补丁patch
- 制作和使用补丁文件的方法:diff和patch命令
- 通过diff工具生成补丁, patch工具打上补丁.
- diff & patch 制作及打补丁
- diff & patch 制作及打补丁
- Linux编程中制作&打补丁:diff & patch