1. 现象

对某一个远程仓库 git pull 过程中,报错如下:

# zl @ srv123 in ~/git/radxa/kernel [14:09:54]
$ git pull
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 5 (delta 4), reused 5 (delta 4), pack-reused 0
展开对象中: 100% (5/5), 580 字节 | 145.00 KiB/s, 完成.
来自 https://github.com/radxa/kernel
05483899648a..b902fb9b8f5e stable-5.10-rock5 -> origin/stable-5.10-rock5
* [新标签] 5.10.66-14-rockchip -> 5.10.66-14-rockchip
fatal: 无法快进,终止。

2 . 尝试 rebse 失败

 zl @ srv123 in ~/git/radxa/kernel [14:18:40] C:128
$ git rebase origin/stable-5.10-rock5
warning: 跳过了先前已应用的提交 b20c76419838
#[...忽略大量输出...]
warning: 跳过了先前已应用的提交 c5e33d713633
提示:使用 --reapply-cherry-picks 来包括跳过的提交
提示:Disable this message with "git config advice.skippedCherryPicks false"
自动合并 arch/arm64/boot/dts/rockchip/Makefile
冲突(内容):合并冲突于 arch/arm64/boot/dts/rockchip/Makefile
自动合并 arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
冲突(添加/添加):合并冲突于 arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts
error: 不能应用 8d8ce536694e... arm64: dts: rockchip: add ROCK 5B board
提示:Resolve all conflicts manually, mark them as resolved with
提示:"git add/rm <conflicted_files>", then run "git rebase --continue".
提示:You can instead skip this commit: run "git rebase --skip".
提示:To abort and get back to the state before "git rebase", run "git rebase --abort".
不能应用 8d8ce536694e... arm64: dts: rockchip: add ROCK 5B board # zl @ srv123 in ~/git/radxa/kernel [14:19:00] C:1
$ git status
交互式变基操作正在进行中;至 b902fb9b8f5e
最后一条命令已完成(1 条命令被执行):
pick 8d8ce536694e arm64: dts: rockchip: add ROCK 5B board
接下来要执行的命令(剩余 9 条命令):
pick bc4c96c590e6 arm64: rockchip_linux_defconfig: add general options
pick e712286fbba5 arm64: rockchip_linux_defconfig: enable network modules
(使用 "git rebase --edit-todo" 来查看和编辑)
您在执行将分支 'stable-5.10-rock5' 变基到 'b902fb9b8f5e' 的操作。
(解决冲突,然后运行 "git rebase --continue")
(使用 "git rebase --skip" 跳过此补丁)
(使用 "git rebase --abort" 以检出原有分支) 未合并的路径:
(使用 "git restore --staged <文件>..." 以取消暂存)
(使用 "git add <文件>..." 标记解决方案)
双方修改: arch/arm64/boot/dts/rockchip/Makefile
双方添加: arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dts 修改尚未加入提交(使用 "git add" 和/或 "git commit -a") # zl @ srv123 in ~/git/radxa/kernel [14:21:24]
$ git rebase --abort

3. 切换到其他分支,然后删除本分支

# zl @ srv123 in ~/git/radxa/kernel [14:21:40]
$ git checkout release-4.4-rockpi4
正在更新文件: 100% (94089/94089), 完成.
切换到分支 'release-4.4-rockpi4'
您的分支与上游分支 'origin/release-4.4-rockpi4' 一致。 # zl @ srv123 in ~/git/radxa/kernel [14:22:01]
$ git branch -D stable-5.10-rock5
已删除分支 stable-5.10-rock5(曾为 c5e33d713633)

4. 然后重新 checkout (本地分支 track 远程分支)

# zl @ srv123 in ~/git/radxa/kernel [14:22:09]
$ git checkout --track origin/stable-5.10-rock5
正在更新文件: 100% (94123/94123), 完成.
分支 'stable-5.10-rock5' 设置为跟踪来自 'origin' 的远程分支 'stable-5.10-rock5'。
切换到一个新分支 'stable-5.10-rock5'

解决“fast-forward, aborting”问题的更多相关文章

  1. Git – Fast Forward 和 no fast foward

    Git 很是强大,在体验过rebase的华丽之后,再次发现之前在TFS上遇到的问题一下都有解了.但也印证了Git深入并非易事.这篇就谈下一个容易迷糊的概念:Fast forward. Fast-For ...

  2. mzy git学习,禁用Fast forward的普通合并(六)

    git merge --no-ff -m "msg" x-branch:禁用Fast forward的普通合并 通常,合并分支时,如果可能,Git会用Fast forward模式, ...

  3. Git分支(2/5) -- Fast Forward 合并

    快捷操作: 切换并创建分支: git checkout -b 分支名. git checkout -b some-change 然后我打开某个文件(index.html)修改一下标题. Commit之 ...

  4. Git的fast forward和no fast forward和 three way merge 以及squash(聚合)

    github上上传了版本库https://github.com/ChuckGitMerge   包括merge和rebase 没时间画图,貌似也不太会用画图工具,先写了一个文字版本的 更新:2015年 ...

  5. Git:非Fast forward下的合并(--no-ff方式的git merge)

    创建dev分支,并且修改readme.txt的内容,然后提交 使用git merge --no-ff -m "说明内容" 分支名称合并分支 使用git log --graph -- ...

  6. git教程5-查看关系图与no fast forward融合

    1.每一个提交相当于一个版本,版本都有版本号与之对应.通常通过git commit -m "name"为每次提交命名. 2.融合:即将次分支的最后一个版本添加到主分支上.当融合冲突 ...

  7. Git 分支管理 不使用Fast forward模式进行合并 分支管理策略

    通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的comm ...

  8. 【Todo】git的fast forward & git命令学习 & no-ff

    git的fast-forward在之前的文章有介绍过,但是介绍的不细: http://www.cnblogs.com/charlesblc/p/5953066.html fast-forward方式就 ...

  9. Git Fast Forward 和 no fast foward

    如果执行了 Fast Forward,开发者根本不会看到这个分支,就像在 master 直接 commit 一样.

  10. Git 关于Fast Forward提交的简单说明

    多人协同开发,使用Git经常会看到警告信息包含术语:fast forward, 这是何义? 简单来说就是提交到远程中心仓库的代码必须是按照时间顺序的. 比如A从中心仓库拿到代码后,对文件f进行了修改. ...

随机推荐

  1. 如何使用CSS伪类选择器

    总览 CSS选择器允许你通过类型.属性.位于HTML文档中的位置来选择元素.本教程阐述了三个新选项:is().:where()和:has(). 选择器通常在样式表中使用.下面的示例会找到所有<p ...

  2. CCC3.0 NFC OWNER PAIRING

    OWNER PAIRING 本篇只介绍所有操作都成功执行的场景,中间如果出现异常,需要翻看规范决定接下来的操作 一些密钥 公私密钥对(Vehicle.PK&Vehicle.SK) Endpoi ...

  3. 3款知名RTMP推流模块比较:OBS VS SmartPublisher VS Flash Media Live Encoder

    OBS 功能强大,几乎所有你想要的场景它都有,用起来很顺手.可以将桌面.摄像头.程序窗口通过rtmp推送到流媒体服务器上. 当然如果你是开发者,想基于OBS做二次开发,实现二次产品化的化,难度比较大, ...

  4. 如何实现Windows平台RTMP播放器/RTSP播放器播放窗口添加OSD文字叠加

    好多开发者在做Windows平台特别是单屏多画面显示时,希望像监控摄像机一样,可以在播放画面添加OSD台标,以实现字符叠加效果,大多开发者可很轻松的实现以上效果,针对此,本文以大牛直播SDK (Git ...

  5. Zookeeper及基于Zookeeper的分布式锁总结

    1. Zookeeper ZooKeeper 内部存储的数据结构 / +-- node1 +-- node2 | +-- sub_node21 -> "I am sub_node21& ...

  6. 电商平台物流模块自建OR对接第三方物流平台

    ​ 前沿 近几年来,电商行业竞争变得愈加激烈,公域流量获客成本越来越高,电商平台规则也越来越严格,数据无法出塔,商家无法自主运营用户群等等原因,很多大品牌纷纷开始搭建自有商城,运营私域流量,以此来降低 ...

  7. MongoDB 副本集的用户和权限一般操作步骤

    步骤总结: 在主节点上添加超管用户,副本集会自动同步 按照仲裁者.副本节点.主节点的先后顺序关闭所有节点服务 创建副本集认证的key文件,复制到每个服务所在目录 修改每个服务的配置文件,增加参数 启动 ...

  8. 为什么 MES 管理系统是智能制造的核心?

    不能说MES 管理系统是智能制造的核心,只能说MES管理系统是智能制造的核心的一部分,并且是一小部分.智能制造的核心的为高端制造装备和工业互联网平台,引用工信部赛迪研究院软件所所长潘文的话" ...

  9. slf4j、log4j2及logback使用

    slf4j.log4j2及logback使用 1.问题来源 之前看过关于slf4j.log4j2及logback的介绍,slf4j是门面,log4j2及logback是具体实现,仅使用slf4j门面是 ...

  10. day07-2MySQL索引

    MySQL索引 说起提高数据库性能,索引是最物美价廉的东西了.不用加内存,不用改程序,不用调sql,查询速度就能提高千百倍. 例子 首先,创建一个有800万条数据的表 -- 创建测试数据库 tmp C ...