git commit后发现git pull 拉取代码失败的解决方案(致命错误:需要指定如何调和偏离的分支。)

news2024/11/24 4:46:46

文章目录

  • 前言
  • 一、情况复现
    • 1.以前多人开发同一分支提交代码逻辑(下拉取后提交)
    • 2.报错
  • 二、解决方案
    • 1. 撤销最近一次提交
    • 2.提交代码
    • 3.注意点:
      • 常用的 git stash 命令:


前言

人员张三和人员李四在同一分支(dev)上开发


一、情况复现

1.以前多人开发同一分支提交代码逻辑(下拉取后提交)

git add .
git commit -m 'fix: 修改逻辑'
git pull origin dev
git push origin dev

2.报错

来自 https://xxxxxxxxxxxxx
branch dev -> FETCH_HEAD
提示:您有偏离的分支,需要指定如何调和它们。您可以在执行下一次
提示:pull 操作之前执行下面一条命令来抑制本消息:
提示: git config pull.rebase false # 合并
提示: git config pull.rebase true # 变基
提示: git config pull.ff only # 仅快进
提示:您可以将 “git config” 替换为 “git config --global” 以便为所有仓库设置
提示:缺省的配置项。您也可以在每次执行 pull 命令时添加 --rebase、–no-rebase,
提示:或者 --ff-only 参数覆盖缺省设置。
致命错误:需要指定如何调和偏离的分支。

在这里插入图片描述

二、解决方案

如果你已经git commit, 从第1步开始,如果没有从第2步开始

1. 撤销最近一次提交

git reset --mixed HEAD^

说明:
git reset:这是Git的一个命令,用于重置当前HEAD到指定的状态。
(1)–mixed:=这是git reset命令的一个选项,它会重置暂存区的状态,使其与HEAD相同,但是不会改变工作区。换句话说,–mixed选项会撤销已经暂存的改动,但是不会撤销已经做出的改动。=
(2)HEAD:===这是一个指向最近一次提交的引用。HEAD是当前分支上最近一次提交的引用,是一个修饰符,表示父提交,所以HEAD^表示当前分支上倒数第二次的提交。===
所以,git reset --mixed HEAD^命令的作用就是撤销最近的一次提交,并且将这些改动从暂存区移除,但是保留在工作区。

2.提交代码

dev 为分支名

git stash // 存储工作区的修改
git pull origin dev // 拉取最新代码
git stash apply // 应用最新存储的代码
git add .
git commit -m 'fix: 提交说明'
git push origin dev

3.注意点:

当你进行上述操作push代码又双叒叕报警告,显示和主分支不一样,可能是你的同事在你拉取后的几分钟里又提交了一次代码,因此你再执行一遍上述步骤即可。

常用的 git stash 命令:

git stash 将所有未提交的修改(包括暂存的和未暂存的)保存到一个新的stash中,然后重置你的工作目录到上次的提交状态
git stash save “message”:同git stash,并附加一条可选的消息。(更好让你理解这个stash为什么被创建)
git stash list:列出所有的stash。
git stash apply:应用最近的stash。
git stash apply stash@{n}:应用指定的stash。
git stash pop:应用最近的stash,并从stash列表中删除它。
git stash drop stash@{n}:删除指定的stash。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1652840.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis(安装及配置)

1.什么是redis Redis 全称 Remote Dictionary Server(即远程字典服务),它是一个基于内存实现的键值型非关系(NoSQL)数据库,由意大利人 Salvatore Sanfilippo 使用 C 语言编写。 2.优势 性能极高&#xff…

Elasticsearch的使用

Elasticsearch 1、认识和安装 Elasticsearch的官方网站如下: https://www.elastic.co/cn/elasticsearch Elasticsearch是由elastic公司开发的一套搜索引擎技术,它是elastic技术栈中的一部分。完整的技术栈包括: Elasticsearch&#xff1…

AI换脸原理(6)——人脸分割介绍

一、介绍 人脸分割是计算机视觉和图像处理领域的一项重要任务,它主要涉及到将图像中的人脸区域从背景或其他非人脸区域中分离出来。这一技术具有广泛的应用场景,如人脸识别、图像编辑、虚拟背景替换等。 在计算机视觉(CV)领域,经典的分割技术可以主要划分为三类:语义分…

UBoat:一款功能强大的HTTP Botnet学习与研究工具

关于UBoat UBoat是一款功能强大的HTTP Botnet概念验证工具,该工具支持复刻一个现实场景中完整功能的Botnet测试环境,广大研究人员可以利用UBoat深入学习和研究Botnet的工作机制,以此来提升安全检测和保护策略。 功能介绍 1、基于C开发&…

隐式3D形状表示:Occupancy Networks

OccNet 的关键思想是隐式地表示3D形状,而不是显式地表示。与直接编码形状几何信息不同,OccNet 将形状的表面建模为非线性分类器的决策边界。 隐式表示:Occupancy Networks 将 3D 形状表示为非线性分类器函数的决策边界 f θ : R 3 X → [ 0…

从开发角度理解漏洞成因(03)

文章目录 JS前端验证 - 文件上传设计浏览器禁用JS,前端绕过文件上传漏洞验证漏洞 Ajax 登录验证,状态回显,状态码设计修改返回包绕过登录验证 通过Ajax 传递数据进行购物验证设计1此漏洞也可以修改状态码绕过 持续更新中… 文章中代码资源已上…

Gitlab自动化测试的配置

1. 代码分支命名规范检测 Setting → Repository → Push rules → Branch name,添加分支命名规范对应的正则表达式。如: ^(Release|Tag|Develop|Feature)_._.|Main$ 表示分支名只能以以下关键字之一开头:Release、Tag、Develop和Feature。 …

Isaac Sim 5 Ros相关(学习笔记5.8.3)

一.RGB、Depth、bbox话题发送 1.新建一个二驱示例小车 路径为Robot-Jetbot(如果找不到也可以直接搜索Jetbot) 2.添加Action Graph 导航栏中:Window - Visual Scripting - Action Graph,建立一个工作区,这个工作区中…

8.1 AWS创建用户池(Amazon Cognito)和用户

AWS创建用户池(Amazon Cognito)和用户 目录一、Amazon Cognito1. 创建用户池2. 添加用户 目录 一、Amazon Cognito Amazon Cognito: https://aws.amazon.com/cognito/ Amazon Cognito 是亚马逊提供的一种身份验证、授权和用户管理服务。它为开发人员提供…

python3安装教程

1.下载python 百度网盘下载python-3.12.3-amd64.exe 链接:https://pan.baidu.com/s/1MV3kvVdjCdS_G-_KgefwLw?pwdpgzu 提取码:pgzu 官网下载:Welcome to Python.org 有很多版本,选择需要的版本下载 2.安装python 双击python-…

电脑连接公司打印机教程

第一步:连接上公司Wifi 第二步:打开设置 第三步:安装打印机驱动程序 3.1 查看打印机型号 打印机上面有个贴纸,上面就写有哦 3.2 进入该网页 打印机驱动,打印机驱动下载 - 打印机驱动网 (dyjqd.com) 下滑点击这里下载&#xff0…

ATA-7050高压放大器在电活性聚合物驱动测试中的应用

电活性聚合物(EAP)是一种在电场刺激下能发生尺寸或形状变化的智能材料。在20世纪90年代后期,已经证明一些电活性聚合物可以表现出高达380%的应变,这样的响应效果优于任何传统的陶瓷致动器。那么你知道高压放大器在电活性聚合物驱动…

Momentum靶机系列Momentum2

先进行arp扫描: 获得渗透靶机的IP:192.168.13.142 扫描一下靶机的使用的端口: 具有tcp端口和http服务的80端口 可以扫描一下80端口的http服务: 可以发现一个网站:http://192.168.13.142 打开该网址: 查看…

Android 异常开机半屏重启代码分析

K1/K2包括家教机H9/H10,异常重启的时候都会开机动画都会出现半屏现象: 为了造这个现象,用eclipse把system_process stop掉就可以看到现象了: 由于开机动画是由SurfaceFlinger服务启动,出现异常会调用SurfaceFling…

【栈】Leetcode 1047. 删除字符串中的所有相邻重复项

题目讲解 1047. 删除字符串中的所有相邻重复项 算法讲解 使用栈这个数据结构,每一次入栈的时候观察此时的字符和当前栈顶字符是否相等,如相等:栈顶出栈;不相等:入栈 class Solution { public:string removeDuplica…

【数据分享】2006—2022年我国城市级别的市政设施水平相关指标(免费获取)

市政公用设施水平,作为衡量一座城市基础设施建设情况的核心指标之一,其完善程度、运行效率以及服务质量,不仅直接关乎城市的日常运转与居民生活质量,更是评估城市综合竞争力、宜居性以及可持续发展能力的关键要素。 我们发现在《…

uniapp怎么使用jsx

安装vitejs/plugin-vue-jsx npm install vitejs/plugin-vue-jsx -Dvite.config.js配置 import { defineConfig } from "vite"; import uni from "dcloudio/vite-plugin-uni"; import vueJsx from vitejs/plugin-vue-jsxexport default defineConfig({plu…

【Java基础】初识正则表达式

正则表达式只适用于字符串 匹配matches 实际使用的是String类中定义的方法boolean matches(String regex) public static void piPei( ){String regex"[1][356789]\\d{9}";boolean boo"14838384388".matches(regex);System.out.println(boo); }验证qq号…

RAG解决方案:解决LLM大模型私域数据缺失问题

目前LLM大模型是一种预训练模型(训练完成后 信息就会截止),那么在获取最新数据和私域数据时候,LLM会有无法给出相关回答的问题。 那么RAG方案可以一定程度上解决这个问题。 用户搜索后,会先在检索系统中检索,然后再把问题和私域数…

在WHM面板上添加新IP

今日我们老板提到要重新建立一个网站,并且要求新注册域名以及该网站对应一个IP地址,我们公司使用的Hostease的美国独立服务器产品也购买了cPanel面板,因此联系Hostease的销售客服购买了一个独立IP地址,但是购买后得到分配的IP后&a…