解决“fast-forward, aborting”问题
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”问题的更多相关文章
- Git – Fast Forward 和 no fast foward
Git 很是强大,在体验过rebase的华丽之后,再次发现之前在TFS上遇到的问题一下都有解了.但也印证了Git深入并非易事.这篇就谈下一个容易迷糊的概念:Fast forward. Fast-For ...
- mzy git学习,禁用Fast forward的普通合并(六)
git merge --no-ff -m "msg" x-branch:禁用Fast forward的普通合并 通常,合并分支时,如果可能,Git会用Fast forward模式, ...
- Git分支(2/5) -- Fast Forward 合并
快捷操作: 切换并创建分支: git checkout -b 分支名. git checkout -b some-change 然后我打开某个文件(index.html)修改一下标题. Commit之 ...
- Git的fast forward和no fast forward和 three way merge 以及squash(聚合)
github上上传了版本库https://github.com/ChuckGitMerge 包括merge和rebase 没时间画图,貌似也不太会用画图工具,先写了一个文字版本的 更新:2015年 ...
- Git:非Fast forward下的合并(--no-ff方式的git merge)
创建dev分支,并且修改readme.txt的内容,然后提交 使用git merge --no-ff -m "说明内容" 分支名称合并分支 使用git log --graph -- ...
- git教程5-查看关系图与no fast forward融合
1.每一个提交相当于一个版本,版本都有版本号与之对应.通常通过git commit -m "name"为每次提交命名. 2.融合:即将次分支的最后一个版本添加到主分支上.当融合冲突 ...
- Git 分支管理 不使用Fast forward模式进行合并 分支管理策略
通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息. 如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的comm ...
- 【Todo】git的fast forward & git命令学习 & no-ff
git的fast-forward在之前的文章有介绍过,但是介绍的不细: http://www.cnblogs.com/charlesblc/p/5953066.html fast-forward方式就 ...
- Git Fast Forward 和 no fast foward
如果执行了 Fast Forward,开发者根本不会看到这个分支,就像在 master 直接 commit 一样.
- Git 关于Fast Forward提交的简单说明
多人协同开发,使用Git经常会看到警告信息包含术语:fast forward, 这是何义? 简单来说就是提交到远程中心仓库的代码必须是按照时间顺序的. 比如A从中心仓库拿到代码后,对文件f进行了修改. ...
随机推荐
- scp复制发送文件夹到其他服务器上
简述scp: scp是secure copy的简写,是linux系统下基于ssh登陆进行安全的远程文件拷贝命令. 写法: scp [可选参数] 登录名@地址:源路径 目标路径. 举例:scp -r ...
- MySQL 不同隔离级别,都使用了什么锁?
大家好,我是树哥. 在上篇文章,我们聊了「MySQL 啥时候会用表锁,啥时候用行锁」这个问题.在文章中,我们还留了一个问题,即:如果查询或更新时的数据特别多,是否从行锁会升级为表锁?此外,还有朋友留言 ...
- 使用spfa算法判断有没有负环
如果存在最短路径的边数大于等于点数,就有负环 给定一个n个点m条边的有向图,图中可能存在重边和自环, 边权可能为负数. 请你判断图中是否存在负权回路. 输入格式 第一行包含整数n和m. 接下来m行每行 ...
- 三门问题模拟对比试验——附VB6和Python3源程序及EXE文件
三门问题模拟对比试验 [直接跳转到文件下载] 前言 "三门问题"是一个很有意思的概率论问题,涉及贝叶斯公式,是人工智能领域的一个经典问题. 为了直观地研究这个问题,也为了测试一下P ...
- 关于使用kuboard安装其自带的监控应用授权普通用户使用
官方文档地址:https://www.kuboard.cn/guide/example/monitor-v2.html#授权用户访问套件
- docker方式安装Redash
之前使用的项目GitHub地址是https://github.com/dazdata/redash.git,这个是直接复制国外的项目的,地址:https://github.com/getredash/ ...
- nacos基础知识理解
概念 Nacos是阿里巴巴开源的一款支持服务注册与发现,配置管理以及微服务管理的组件.用来取代以前常用的注册中心(zookeeper , eureka等等),以及配置中心(spring cloud c ...
- CentOS7配置nodejs环境
# 安装 wget https://nodejs.org/dist/v12.18.3/node-v12.18.3-linux-x64.tar.xz tar xf node-v12.18.3-linux ...
- 12. Fluentd部署:多Workers进程模式
介绍如何使用Fluentd的多worker模式处理高访问量的日志事件.此模式会运行多个worker进程以最大利用多核CPU. 原理 默认情况下,一个Fluentd实例会运行一个监控进程和一个工作进程. ...
- (三)JPA - EntityManager的使用
(二)JPA 连接工厂.主键生成策略.DDL自动更新 建议在需要使用时,看看之前的文章,先把环境搭起来. 4.EntityManager EntityManager 是完成持久化操作的核心对象. En ...