patch和diff的使用

有些时候对代码有修改时,可能不方便提交git。

这个时候如果其他同事需要用到你修改的代码时,通常有两种做法:

1、把修改的文件发过去,对方拿比较工具比较差异进行合并

2、提供补丁文件

显然第一种方式不够优雅,且当修改文件较多时,费时且容易出错。

这里主要记录一下linux环境下通过patch和diff命令,打补丁和应用补丁的方法。

制作补丁

假设有两个目录 old 和 new

diff -rNu old/ new/ > patch.patch  

patch.patch就是生成的补丁文件

应用补丁

当需要还原时,新建一个目录,将patch文件和old拷贝过去

执行patch -p0 < patch.patch即可

上例子:

1、复制两份一样的目录分别取名字 old 和 new 

2、修改new目录下的文件

3、生成补丁(红框部分是我加的修改项)

 4、创建一个临时目录,拷贝要应用补丁的目录和补丁文件进去

 5、应用补丁

再次比较证明应用成功

 

或者直接进入需要应用patch的目录中执行

patch -p1 < ../xxx.patch 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值