【Git】 git push 提示Not possible to fast-forward,无法提交也无法提交程序
目录
一、执行rebase操作
二、取消rebase操作
错误内容
# git push
To gitlab.aipark.com:aits/data-intergration.git! [rejected] zjk-prod-20230823 -> zjk-prod-20230823 (fetch first)
error: failed to push some refs to 'gitlab.aipark.com:aits/data-intergration.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
出现这个错误提示的原因是,你和其他人修改了同一个文件,而且别人比你先提交。所提此时你在本地执行git pull和git push都无法完成。
一、执行rebase操作
1、此时你需要执行下面命令(--rebase顾名思义,重新校准基础版本,将本地的基础版本更新为git上的基础版本)【注意执行这个命令之前你需要将本地代码全部暂存】
// master指的是当前修改的分支,请修改当前你所修改的分支名称(不然会出人命的)
git pull origin zjk-prod-20230823 --rebase
2、一般情况下执行完这个,如果没有冲突,后面就可以正常进行更新和提交操作了。
3、但是如果代码有冲突(别人和你修改了同一行代码,导致git不能自动合并),你会发现执行完之后本地版本变成了:5eec00e ±✚ >R,类似于这样的,说明rebase失败了,命令会提示哪些文件没有rebase成功,你需要手动将这些冲突合并。
4、等待所有冲突文件修改完成,暂存所有文件。
5、执行命令
git rebase --continue
执行命令后可以正常提交代码到 zjk-prod-20230823分支。
6、如果依然存在冲突文件,重复步骤3、4、5,直到所有冲突修改完毕就可以了,最后就能正常提交更新了。
步骤1的rebase命令,一定要注意,网上给出的都是git pull origin master --rebase,指的是将本地基础版本修改为远程分支zjk-prod-20230823最新版本,如果你本地修改的是develop或者其他分支,就会导致代码错乱,此时需要恢复rebase操作,取消rebase操作,操作如下:
二、取消rebase操作
git pull origin master --rebase操作是重新校准本地基础版本,如果修改了一半,想要取消如何操作,或者是发现自己rebase错了分支如何撤销。
1、git pull origin master --rebase在冲突的情况下会出现(zjk-prod-20230823|REBASE 2/8)冲突的提示,说明有8个冲突文件需要修改。(如何解决这个问题,请移步这里)
2、取消rebase执行命令
git rebase --abort
3、查看自己修改的rebase记录日志
git reflog
b021abd (HEAD -> zjk-prod-20230823, origin/zjk-prod-20230823) HEAD@{0}: pull origin zjk-prod-20230823 --rebase (finish): returning to refs/heads/zjk-prod-20230823
b021abd (HEAD -> zjk-prod-20230823, origin/zjk-prod-20230823) HEAD@{1}: pull origin zjk-prod-20230823 --rebase (pick): 添加白名单
da0275b HEAD@{2}: pull origin zjk-prod-20230823 --rebase (start): checkout da0275b5cb8a090239768a7e0f3c29b136a485d2
49b6fa0 HEAD@{3}: commit: 添加白名单
93e7e5e HEAD@{4}: pull: Fast-forward
b74993c HEAD@{5}: checkout: moving from ts_kp_20230411 to zjk-prod-20230823
1556aa1 (ts_kp_20230411) HEAD@{6}: pull: Fast-forward
f6af3a8 HEAD@{7}: pull: Fast-forward
7a94afa HEAD@{8}: pull: Fast-forward
c904469 HEAD@{9}: pull: Fast-forward
2c810f3 HEAD@{10}: pull: Fast-forward
27437d7 HEAD@{11}: pull: Fast-forward
11e6536 HEAD@{12}: pull: Fast-forward
915a77e HEAD@{13}: pull: Fast-forward
af187d5 HEAD@{14}: commit: 修改pom依赖,移除不必要的依赖
2edffd1 HEAD@{15}: pull origin ts_kp_20230411: Fast-forward
245bf31 HEAD@{16}: pull origin ts_kp_20230411: Fast-forward
5f66ed7 (origin/zjk-pre-1.0.0, zjk-pre-1.0.0) HEAD@{17}: checkout: moving from zjk-pre-1.0.0 to ts_kp_20230411
5f66ed7 (origin/zjk-pre-1.0.0, zjk-pre-1.0.0) HEAD@{18}: clone: from gitlab.aipark.com:aits/data-intergration.git
4、观察日志中的记录,这里发现是在HEAD@{2}执行的rebase,然后执行恢复命令(注意是执行rebase命令的前一个步骤即:HEAD@{3})
git reset --hard HEAD@{3}
5、如果想回滚到其他提交点,可以通过命令查看,如查看最近2次提交
git log -n 2
# git log -n 2commit da0275b5cb8a090239768a7e0f3c29b136a485d2
Merge: 93e7e5e af72411
Author: aaa <aaa@xxx.com>
Date: Thu Sep 7 05:34:14 2023 +0000Merge branch 'ts_kp_20230411' into 'test'minio上传图片接口 See merge request aits/data-intergration!10commit af72411206738273c79b585270063dca88ccb67c (origin/test)
Author: aaa <aaa@xxx.com>
Date: Thu Sep 7 10:32:02 2023 +0800minio上传图片不用获取url
如果想回退到指定提交点,执行对应的commit id
git reset --hard af72411206738273c79b585270063dca88ccb67c
相关文章:
【Git】 git push 提示Not possible to fast-forward,无法提交也无法提交程序
目录 一、执行rebase操作 二、取消rebase操作 错误内容 # git push To gitlab.aipark.com:aits/data-intergration.git! [rejected] zjk-prod-20230823 -> zjk-prod-20230823 (fetch first) error: failed to push some refs to gitlab.aipark.com:aits/data-in…...
优思学院|为什么质量工程师在别人看是“救火“的呢?
为什么质量工程师在别人看是‘救火’的呢?现今的质量管理体系已经很成熟,一家公司质量部门会有IQC、IPQC、OQC负责来料、过程质量、成品质量等等,而质量工程师(QE)的工作是要确保这些活动合理和有效,不产生…...
VMware Explore | 联想与VMware扩大合作带来生成式AI和多云解决方案
*带有 VMware Cloud 的全新联想 ThinkSystem 生成式 AI 解决方案,采用 NVIDIA 加速计算和软件,提供专为实现下一代 AI 工作负载而打造的 GPU 密集型平台。 联合创新实验室为商业中端市场和企业提供即用型混合多云解决方案。 全新 Lenovo TruScale Hybr…...
8月份徒弟企业面试后反馈的软件测试面试题(含金量高请收藏)
hello,我是清风。最近很多粉丝私信我要软件测试学习和面试资料,今天来安排一下面试题。我这里从来不缺永远不缺的就是面试提。我个人有几年软件测试面试官经验先不谈,我的徒弟每个月出去面试,我会叫他们录音。面试题都会反馈给我 …...
私有云不是真正的云计算!
大数据产业创新服务媒体 ——聚焦数据 改变商业 中国云计算遇到困境,IaaS层面,阿里云、腾讯云等增长乏力;SaaS没有发展起来。反观美国,整个云计算蓬勃发展,AWS、微软云、谷歌云体量更大,增速却不低&#x…...
netperf 测试时延和吞吐
一、Netperf是一种网络性能测试工具,主要基于TCP或UDP的传输。可以测量TCP和UDP传输的吞吐量、时延、CPU 占用率等性能参数。Netperf测试结果所反映的是一个系统能够以多块的速度向另一个系统发送数据,以及另一个系统能够以多块的速度接收数据。 二、打…...
安卓预制权限添加规则
android:protectionLevel 可以在 android/frameworks/base/core/res/AndroidManifest.xml查询 signature|preinstalled 加在 这个文件里 privapp-permissions-xx.xml dangerous 加在 default-permissions/default-mega-permissions.xml normal 不需要加 不存在两个文件都加…...
D3JS简介
D3JS 什么是D3js D3.js是一个流行的JavaScript数据可视化库,它提供了一系列的API和工具,用于创建交互式的数据图表、地图等可视化效果。以下是一些D3.js的特点和用途: 数据驱动:D3.js基于数据驱动的思想,将数据和视觉…...
系统架构设计师(第二版)学习笔记----系统工程
【原文链接】系统架构设计师(第二版)学习笔记----系统工程 文章目录 一、系统工程方法1.1 系统工程方法的特点1.2 系统工程方法种类1.3 霍尔三维结构的7个阶段1.4 霍尔三维结构的7个步骤1.5 切克兰德方法的7个步骤1.6 并行工程的目标1.7 并行工程强调以下…...
java spring cloud 企业工程管理系统源码+二次开发+定制化服务
鸿鹄工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离构建工程项目管理系统 1. 项目背景 一、随着公司的快速发展,企业人员和经营规模不断壮大。为了提高工程管理效率、减轻劳动强度、提高信息处理速度和准确性,公司对内部工程管…...
IMX6ULL移植篇-boot 命令的学习
一. boot 命令简介 uboot 的作用是启动 Linux系统。所以 uboot 肯定有相关的 boot(引导)命令来启动 Linux。 常用的与 boot 有关的命令有:bootz、bootm 和 boot。 本文主要学习 boot 命令的使用。 本文接上一篇文章,如下: IMX6ULL移植篇…...
Python字典和集合操作指南:创建、获取值、修改和删除键值对,复制和遍历方法全解析
文章目录 字典(dict)创建字典获取字典中的值修改字典删除字典中的键值对复制字典字典推导式遍历字典使用keys()方法使用values()方法使用items()方法 小结 集合(set)创建集合集合操作集合运算小结 python精品专栏推荐python基础知…...
unity 接收拼接数据进行纹理替换且保存相机纹理到rtsp server(一)
1 rtsp 协议后编码解码 rtsp协议的问题就是,拼接完成后,还需要编码,而unity里面再需要解码,需要的过程多了一步编码再解码,大大加重了 2 rtsp 协议后轻量编码 rtsp协议使用mjpeg进行图片传输。why?这样做…...
视频讲解|3014 含分布式电源的配电网优化重构
目录 1 主要内容 2 讲解视频链接 3 部分程序 1 主要内容 该视频为程序目录中编号1034的讲解内容,该程序的链接为配电网优化重构matlab智能算法,本次重点讲解了基本环矩阵原理以及代码两步实现过程、如何利用基本环向量去创造可行解、粒子群优化过程、…...
分布式、锁、延时任务
1. redission redission 原理 Redis分布式锁-这一篇全了解(Redission实现分布式锁完美方案) 2.zk 2.1 指令 ls / / 下有哪些子节点 get /zookeeper 查看某个子节点内容 create /aa “test” delete /aa set /aa “test01” 2.2 创建节点 模式 默认创建永久 create -e …...
Mojo 语言官网
Mojo面向 AI 开发者的新型编程语言,无缝支持CPU、GPU,兼容Python,跟Python类似的语法,但是比Python快68000倍。目前Mojo仅支持Ubuntu,暂不支持Windows和Mac,可以在Mojo Playground先体验一下。 Mojo 语言…...
JTS:02 使用WKB操作数据
版本 org.locationtech.jts:jts-core:1.19.0 链接: github 代码 import org.locationtech.jts.geom.Coordinate; import org.locationtech.jts.geom.Geometry; import org.locationtech.jts.geom.GeometryFactory; import org.locationtech.jts.geom.Point; import org.loca…...
stonedb部署实践
1.使用docker部署,会有一些问题,启动失败: xiuchenggongxiuchengdeMacBook-Pro stonedb % docker logs 27a92a0510fd _main[ -f …...
wsl使用apt install net-tools报错
前两天折腾了几个小时把wsl安装好了,后面准备安装ifconfig命令的时候发现网络有问题,总结处理过程如下: 1.修改/etc/wsl.conf文件,修改后wsl.conf文件内容如下: [boot] systemdtrue [network] generateResolvConffals…...
python 使用requests爬取百度图片并显示
爬取百度图片并显示 引言一、图片显示二、代码详解2.1 得到网页内容2.2 提取图片url2.3 图片显示 三、完整代码 引言 爬虫(Spider),又称网络爬虫(Web Crawler),是一种自动化程序,可以自动地浏览…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...
Rust 开发环境搭建
环境搭建 1、开发工具RustRover 或者vs code 2、Cygwin64 安装 https://cygwin.com/install.html 在工具终端执行: rustup toolchain install stable-x86_64-pc-windows-gnu rustup default stable-x86_64-pc-windows-gnu 2、Hello World fn main() { println…...
安卓基础(Java 和 Gradle 版本)
1. 设置项目的 JDK 版本 方法1:通过 Project Structure File → Project Structure... (或按 CtrlAltShiftS) 左侧选择 SDK Location 在 Gradle Settings 部分,设置 Gradle JDK 方法2:通过 Settings File → Settings... (或 CtrlAltS)…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
MySQL 主从同步异常处理
阅读原文:https://www.xiaozaoshu.top/articles/mysql-m-s-update-pk MySQL 做双主,遇到的这个错误: Could not execute Update_rows event on table ... Error_code: 1032是 MySQL 主从复制时的经典错误之一,通常表示ÿ…...
