linux patch

1,patch命令的安装

yum install -y patch

2,patch 文件的生成

[root@localhost test]# git diff 1.txt 2.txt > r.patch

3,打patch

[root@localhost test]# patch 1.txt < r.patch

或者[root@localhost test]# patch < r.patch

4,复原

[root@localhost test]# patch -R 1.txt < r.patch

或者[root@localhost test]# patch -R < r.patch

5,-p参数

 -p参数决定了是否使用读出的源文件名的前缀目录信息,不提供-p参数,则忽略所有目录信息

-p参数比较的pwd(当前路径)和patch文件中的路径;

指定-p参数时需要考虑a/ b/即a/ b/也算一层; 忽略的是patch文件中的路径

第4步中的例子,不指定 -p 等同于 -p1,因为只有一层路径 a/ b/

要使pwd/ 和patch文件中的路径忽略对应层后 可以组合为对应的文件路径。

一般在需要打patch的文件里执行patch 指令;patch文件的路径不重要。

 

git diff release-1.10.3 release-1.12.2 > ../nginx_upgrade.patch

patch -p1 --dry-run < ../nginx_upgrade.patch(预览打补丁后会有哪些变化)

patch -p1 < ../nginx_upgrade.patch

回车y忽略不必要的文件

删除以.orig结尾的文件

find . -name *.orig | xargs rm

add正常的文件

git add ……..

参照以.rej结尾的文件手动修改对应的文件

 

 

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值