git如何打补丁?

git cherry-pick 可以把某个分支的某几次提交合入到当前分支,只是在一台设备上操作。

git format-patch 可以把某个分支的n次提交分别打成n个补丁,然后把这些补丁文件(比如0001-.patch)发给其他人,或者发到其他机器,他们在自己的机器上,把这些补丁合入到他们当前的代码中。

比如,分支erebus20180910相比master分支,多了一次提交,打补丁就生成一个补丁文件

 

 

参考:https://www.jianshu.com/p/814fb6606734

 

1、在git源码目录下执行

1.1、两个commit间的修改(包含两个commit)

git format-patch <r1>..<r2>
如:
git format-patch d77aaac74845435744c49ae65511d9e1be79ed5c...046ee8f8423302f5070ca81b4e246516e919cd7a -o patch

1.2、单个commit

git format-patch -1 <r1>

1.3、从某commit以来的修改(不包含该commit)

git format-patch <r1>

2、 把生成的patch文件拷贝到目标git目录下

3、测试patch

3.1、 检查patch文件

git apply --stat 0001-minor-fix.patch

3.2、 查看是否能应用成功

git apply --check 0001-minor-fix.patch

4、应用patch

git am -s < 0001-minor-fix.patch

 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值