美文网首页
git am 手动解决冲突

git am 手动解决冲突

作者: _宋江_ | 来源:发表于2022-06-30 16:24 被阅读0次


1.合入遇到冲突

$ git am 0001-net-dsa-mv88e6xxx-Fix-statistics-on-mv88e6161.patch

Applying: net: dsa: mv88e6xxx: Fix statistics on mv88e6161

error: patch failed: drivers/net/dsa/mv88e6xxx/chip.c:3093

error: drivers/net/dsa/mv88e6xxx/chip.c: patch does not apply

Patch failed at 0001 net: dsa: mv88e6xxx: Fix statistics on mv88e6161

Use 'git am --show-current-patch' to see the failed patch

When you have resolved this problem, run "git am --continue".

If you prefer to skip this patch, run "git am --skip" instead.

To restore the original branch and stop patching, run "git am --abort".

如上提示“patch does not apply”,说明patch不能合入,你可以解决问题后“git am --continue”继续,也可以“git am --skip”忽略,或者“git am --abort”停止合入。

2.git apply --reject导出冲突

$ git apply --reject 0001-net-dsa-mv88e6xxx-Fix-statistics-on-mv88e6161.patch

Checking patch drivers/net/dsa/mv88e6xxx/chip.c...

error: while searching for:

        .port_disable_pri_override = mv88e6xxx_port_disable_pri_override,

        .port_link_state = mv88e6352_port_link_state,

        .port_get_cmode = mv88e6185_port_get_cmode,

        .stats_snapshot = mv88e6320_g1_stats_snapshot,

        .stats_set_histogram = mv88e6095_g1_stats_set_histogram,

        .stats_get_sset_count = mv88e6095_stats_get_sset_count,

        .stats_get_strings = mv88e6095_stats_get_strings,

此时git status会看到.rej结尾的文件,此文件即表示希望合入的代码。

3.vim -O打开此文件和原文件

此时掌握几个命令:

ctrl+双w:左右界面切换;

/+字符串:在此文件搜索字符串匹配

shift+v:全选行;

shift+v,上下键:选多行

y:复制

p:粘贴

dd:删除行

活用如上快捷键,可实现从左侧粘贴对应内容,并复制到右侧文件,同时删除想要删除行;

1)光标指向左侧文件+行,shift+v选中,y复制;

2)ctrl+ww到右侧文件,光标指向对应修改行,p粘贴;

3)光标指向希望删除行,dd删除;

4)保存文件;

4.git add修改文件

5. git am --continue 继续

相关文章

  • git am 手动解决冲突

    1.合入遇到冲突 $ git am 0001-net-dsa-mv88e6xxx-Fix-statistics-o...

  • GIT

    git特点分布式,svn(集中式)回到过去,回到未来(更改状态点)多端共享解决冲突(手动解决)控制版本 验证git...

  • git强制合并分支

    git A分支合并B分支,并强制使用B分支代码(不手动解决冲突) git A分支合并B分支,并强制使用A分支代...

  • git am 冲突

    平时修改过的代码,我们会用patch文件保存改动。但是伴随着主线代码的不断更新,我们在早期保存出来的patch中有...

  • git分支合并及切换

    git分支合并使用 git merge branchname 命令,若提示有冲突,先手动修改冲突后保存提交 git...

  • (二)

    转自:Android Studio、Git 解决合并冲突Android Studio、Git 解决合并冲突Andr...

  • git 使用

    在命令行,git pull 有冲突的话,到源代码手动删除冲突的代码git commit 查看已经修改的冲突,:wq...

  • dev到master 冲突解决

    中间会有冲突需要手动解决

  • git如何处理别人的pull request及解决冲突

    git 解决冲突

  • (4.2) git分支管理-解决冲突

    小结 当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。 解决冲突就是把Git合并失败...

网友评论

      本文标题:git am 手动解决冲突

      本文链接:https://www.haomeiwen.com/subject/ejbcbrtx.html