git am冲突解决办法
0. 前言
我们在合并patch的时候,希望将patch 作者的基本信息也一并合并,这样就需要git am命令,但是在git am 合并的时候会出现冲突,如何快速有效的解决呢?本文基于git am 命令提供两种方法。
1. 使用git am 命令尝试合并
2. git apply --reject合入不冲突部分,保留冲突部分
git apply --reject 0001-62412e5b8c33ee711aa20500cb1a9bb948c1f7d7.patch
Checking patch mm/page_alloc.c...
warning: mm/page_alloc.c has type 100755, expected 100644
error: while searching for:const struct alloc_context *ac)
{unsigned int noreclaim_flag;unsigned long pflags, progress;cond_resched();/* We now go into synchronous reclaim */cpuset_memory_pressure_bump();psi_memstall_enter(&pflags);fs_reclaim_acquire(gfp_mask);noreclaim_flag = memalloc_noreclaim_save();error: patch failed: mm/page_alloc.c:4476
Hunk #2 succeeded at 4254 (offset -236 lines).
Hunk #3 succeeded at 4267 (offset -236 lines).
Hunk #4 succeeded at 4289 (offset -236 lines).
Applying patch mm/page_alloc.c with 1 reject...
Rejected hunk #1.
Hunk #2 applied cleanly.
Hunk #3 applied cleanly.
Hunk #4 applied cleanly.
3. git status 查看apply 之后的状态
git apply --reject 0001-62412e5b8c33ee711aa20500cb1a9bb948c1f7d7.patch
Checking patch mm/page_alloc.c...
warning: mm/page_alloc.c has type 100755, expected 100644
error: while searching for:const struct alloc_context *ac)
{unsigned int noreclaim_flag;unsigned long pflags, progress;cond_resched();/* We now go into synchronous reclaim */cpuset_memory_pressure_bump();psi_memstall_enter(&pflags);fs_reclaim_acquire(gfp_mask);noreclaim_flag = memalloc_noreclaim_save();error: patch failed: mm/page_alloc.c:4476
Hunk #2 succeeded at 4254 (offset -236 lines).
Hunk #3 succeeded at 4267 (offset -236 lines).
Hunk #4 succeeded at 4289 (offset -236 lines).
Applying patch mm/page_alloc.c with 1 reject...
Rejected hunk #1.
Hunk #2 applied cleanly.
Hunk #3 applied cleanly.
Hunk #4 applied cleanly.
~/work/jr510_r_1.0_dev/android/kernel/jlq-5.4:
git status .
HEAD detached at f315c6d67d28
You are in the middle of an am session.(fix conflicts and then run "git am --continue")(use "git am --skip" to skip this patch)(use "git am --abort" to restore the original branch)Changes not staged for commit:(use "git add <file>..." to update what will be committed)(use "git checkout -- <file>..." to discard changes in working directory)modified: mm/page_alloc.cUntracked files:(use "git add <file>..." to include in what will be committed)mm/page_alloc.c.rej
会在文件目录下产生一个 .rej 后缀的文件,里面就是无法自动合并的冲突,需要手动修改。
4. git am --continue 进行中断后的操作
- 因为修改后的文件是modified 状态,需要git add 将其修改位added 状态,然后进行
- git am --continue 进行之前中断后的操作。
- 有可能需要Changed Id,git commit --amend 可以生成;
- git log 查看是否已经添加成功;
- git show 查看patch 是否是自己需要的;
5. 第二种方法
- 对于修改起来比较简单的,可以手动修改之后产生一个修改的manual.patch;
- 然后同样git am source.patch,这个时候会提示冲突;
- 不要管上面这一步,直接git apply manual.patch,这个patch 肯定可以apply的;
- git add -> git am --continue -> git commit --amend -> git push。。
git am冲突解决办法相关推荐
- git代码冲突解决办法
一. 前言 作者是一个工作2年的Java程序猿,因为自己经常用到git,每天都需要提交代码,有时候合并代码也会有一些类代码冲突,把自己的解决方法告知出来,让大家有一定的参考. 二. 冲突产生的原因 ...
- git merge git pull时候遇到冲突解决办法git stash
git merge git pull时候遇到冲突解决办法git stash 在使用git pull代码时,经常会碰到有冲突的情况,提示如下信息: error: Your local changes t ...
- git am 冲突解决技巧
git am 冲突解决技巧 使用git am合patch的时候可能有冲突出现,这个时候,手动解决的办法是看看冲突在哪里, 然后手动的把那个patch和入.手动合入需要的时间太长. 我们可以用git a ...
- git am 冲突解决
git am 冲突解决技巧 使用git am合patch的时候可能有冲突出现,这个时候,手动解决的办法是看看冲突在哪里, 然后手动的把那个patch和入.手动合入需要的时间太长. 我们可以用git a ...
- 哈希表及哈希冲突解决办法
哈希表及哈希冲突解决办法 目录 什么是哈希表? 哈希表的数据结构 哈希冲突 哈希冲突解决办法 1. 什么是哈希表? 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直 ...
- Hash——哈希法概念、哈希函数构造方法、哈希冲突解决办法(重点讨论链地址法)
声明:本篇博客根据回顾老师上课知识和书籍<数据结构--用C语言描述>(耿国华)整理得出,仅作知识回顾学习用. 1.哈希法 哈希法又称散列法.杂凑法.关键字地址计算法.相对应的表称为哈希表. ...
- Visio2019与Win10输入法冲突解决办法
Visio2019与Win10输入法冲突解决办法 Visio2019在Win10下使用时,经常出现输入法只能输入英文不能输入中文的情况.出现这种现象时,关闭Visio再次打开一般可以恢复正常输入一段时 ...
- SVN多用户开发 代码冲突解决办法
[SVN多用户开发]代码冲突&解决办法 SVN是一款集中式的代码存储工具,可以帮助多个用户协同开发同一应用程序. 但是SVN不能完全代替人工操作,有时也需要程序员自己进行沟通确认有效的代码. ...
- IntelliJ IDEA 中 Ctrl+Alt+T 快捷键失效、无法弹出surround with、与qq热键冲突-解决办法
本文转载 原文地址: idea Ctrl+Alt+T 快捷键失效.无法弹出surround with.与qq热键冲突-解决办法
最新文章
- easymailobjects php,用easymailobject组件处理exchange邮件源代码(6)_asp实例
- 职场疑问:如何进行技术面试
- 卷积神经网络中的各种池化操作
- python散点图如何设置外边框_如何绘制散点图的外围边框?
- java uuid静态方法_Java UUID compareTo()方法与示例
- Android课设电台论文,基于Android的超短波电台多媒体传输系统
- .net人员用Java 之Java EE
- P3368 【模板】树状数组 2
- phpstorm 新建拉取项目_Flink1.8实时数仓项目实战
- PHP 23种设计模式
- 有限元法(Finite Element Method,FEM)原理详解
- du和df命令的区别
- 经典之打印沙漏-数学分析-C/C++
- 专利缴费后如何获取发票
- 知云文献翻译软件及遇到的一些问题
- 2019CSP初赛基础知识整理
- 雷鸟电视卸载自带应用和开机广告+停用自动更新
- 【JokerのLabView】VI嵌套。
- Python | 编辑器推荐:Jupyter
- 电流反馈运算放大器介绍及RF(反馈电阻)的作用