快速解决git am冲突

前言

当希望通过git am xxxx.patch,添加一些代码修改,如果代码版本相差较大,就可能产生冲突。

这种必须要我们手动修改冲突内容。

解决过程

1. git am 尝试打入patch补丁

bash 复制代码
git am 0004-patch.patch

2. git apply --reject生成冲突文件

执行此命令,将自动合入 patch 中不冲突的代码改动,同时保留冲突的部分。这些存在冲突的改动内容会被单独存储到目标源文件的相应目录下,以后缀为 .rej 的文件进行保存。

bash 复制代码
git apply --reject 0004-patch.patch

3. git status查看冲突文件

bash 复制代码
git status

4. 解决冲突

打开xxx.rej文件,例如这里的virtio-gpu.h.rej

其中包含了冲突内容,进入到对应的源码文件中,将冲突部分手动改进去就可以了。
改完后,将对应的.rej文件删除掉。

bash 复制代码
# 查看
git status

5. git add xxx

将解决的冲突修改,添加到暂存区

bash 复制代码
git add include/hw/virtio/virtio-gpu.h

6. git am --resolved

bash 复制代码
git  am  --resolved

继续完成,1中被中断的 patch 合入操作。

如下图所示,applying:xxx,表示成功将该patch完整的加入到了项目代码中


参考文章

1. 定位和解决git am冲突的方法

相关推荐
悟空20164 小时前
001、Git开发流程规范
git
Li小李同学Li4 小时前
git学习【持续更新中。。。】
git·学习·elasticsearch
晨春计5 小时前
【git】
android·linux·git
念幽6 小时前
Git常用命令
git
神技圈子6 小时前
【git系列】git中的那些迷惑的术语以及概念详解
git
benben0447 小时前
Photoshop使用方法大全
git
ou.cs8 小时前
git 删除远程分支的几种写法
git
atlanteep8 小时前
Linux·权限与工具-git与gdb
linux·git
胆小鬼~18 小时前
【DAY20240918】03教你轻松配置 Git 远程仓库并高效推送代码!
git
哆啦安全21 小时前
git常用命令(patch补丁和解决冲突)
git