git 提交patch

1. 为什么打patch

2. 创建分支(可以不用创建)

git checkout -b branch_name

3. 进行bug的修复

4. 提交代码

git status
git add .
git commit -m "this is a patch"

5. 查看你要打patch的id

git log

6. 打一个patch包,你会在当前目录下获取一个patch的包

git format-patch  commit的id

7. 切换到master分支,并到(需要打patch的目录下)修改代码目录,打patch

git am patch路径

打patch遇见冲突

git format-patch HEAD^ #生成最近的1次commit的patch
git apply --stat 0001-limit-log-function.patch  # 查看patch的情况
git apply --check 0001-limit-log-function.patch # 检查patch是否能够打上,如果没有任何输出,则说明无冲突,可以打上
git apply xxx.patch

参考:https://blog.csdn.net/Chen_leilei/article/details/124153983/

 

一、单文件

Step1.生成补丁

diff –uN from-file to-file > to-file.patch

示例:diff -uN ../great/device/qcom/great/great.mk device/qcom/great/great.mk > patch001-great.mk.diff

Step2. 打补丁或去除补丁

patch –p0 < to-file.patch //打补丁

示例:patch -p0 < patch001-great.mk.diff

patch –R –p0 < to-file.patch //去除补丁

示例:patch -R -p0 < patch001-great.mk.diff

Step3. 检查 *.rej文件,是否存在异常!

二、多文件(目录)

diff –uNr from-dir to-dir > to-dir.patch //生成补丁

cd from-dir

patch –p1 < to-dir.patch //打补丁

patch –R –p1 < to-dir.patch //去除补丁

posted @ 2023-04-10 09:20  zhuang6  阅读(196)  评论(0)    收藏  举报