【Git】P5 Git 远程仓库(3)pull 发生冲突

news2025/7/15 2:42:42

pull 发生冲突

  • 冲突在什么场景下发生?
  • 为什么要先 pull 再 push
  • 构建一个冲突场景
    • 初始
    • 开始操作:
      • 程序员2:
      • 程序员1:
      • 程序员2:
      • 发生冲突:
      • 查看冲突:
      • 解决冲突:


冲突在什么场景下发生?

Git在文件合并时是比较智能的,对于同一个文件不同位置的修改内容会自动合并,只有在同一个文件同一个位置被同时修改时(本地仓与远程仓的当前版本有差异),才会产生冲突。
摘自华为云,说的很清晰;

所以事实上很少情况下会发生冲突;只有在同一个文件,同一个位置,被同时修改


为什么要先 pull 再 push

在修改完之后打算上传 push 之前,第一步操作是先 pull,为什么?

对于push可以理解为覆盖,个人项目不会出现这个问题,但是大项目,往往有很多人在一起修改,甚至你都不知道是谁在修改。所以这里有一个时间差的问题。

为了理解这点,我想先重申一下解决步骤:
老板给一个任务,解决一个服务的bug

在这里插入图片描述

  1. git clone
  2. 修复bug
  3. git add .
  4. git commit
  5. git pull
  6. git push

在你的第二步开始,将云端拉到本地,到第5步时,你都是与云端“失联”的,云端任何修改你都没有同步到本地,所以你需要在第五步进行pull操作;


构建一个冲突场景

初始

云端:

user.txt 内容为 user=aaaaa

在这里插入图片描述

开始操作:

程序员2 -> 程序员1 -> 程序员2

程序员2:

git clone git@gitee.com:hongduoxu/git_test.git bug-test
cd bug-test
vim user.txt		# 正在更改 user=ccccc
# 未完待续...看程序员1操作

程序员1:

vim user.txt		# 内容修改为 user=bbbbb
git add .
git commit -m 'bbbbb'
git pull
git push

程序员2:

git add .
git commit -m 'ccccc'
git pull

发生冲突:

在这里插入图片描述

查看冲突:

cat user.txt

在这里插入图片描述

解决冲突:

vim user.txt
# 打开后手动解决问题,只保留需要的部分,然后保存 :wq

然后再次执行:

git add .
git comment -m 'xxxxx'

此时再执行 pull

git pull
# return: Already up to date.

最后上传 push

git push

解决冲突完成。

其实解决冲突的关键在于为什么会发生冲突,毕竟发生冲突的要求如此苛刻。看到冲突后,我暂时认为最大的问题是需要冲突的地方,跟程序员1商量该如何改。


2023.3.8 包玉刚图书馆

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

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

相关文章

[手写OS]动手实现一个OS 之 准备工作以及引导扇区

[手写OS]动手实现一个OS之第一步-环境以及引导扇区 环境准备 一台可用计算机(linux我不知道,我用的Windows)汇编编译器NASM一个方便的软盘读写工具VirtualBox 汇编编译器NASM 官网地址:https://www.nasm.us/pub/nasm/snapshot…

java 中的equals()示例代码

Java中的equals()是十分重要的,和要区别开来简述public booleanequals(Object obj)作用:判断其他的对象是否和该对象相等其比较规则为:当参数obj引用的对象与当前对象为同一个对象时,就返回true,否则返回false.简单示例equals()方…

代码随想录算法训练营第二十二天 | 235. 二叉搜索树的最近公共祖先 、701.二叉搜索树中的插入操作、450.删除二叉搜索树中的节点

打卡第22天,平衡二叉树,难,难,难。 今日任务 235.二叉搜索树的最近公共祖先701.二叉搜索树中的插入操作450.删除二叉搜索树中的节点 235.二叉搜索树的最近公共祖先 给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百…

BeanFactory接口

目录 概述 接口方法 BeanFactory重要的子类 概述 BeanFactory是容器的顶层接口,也是spring最核心的容器,管理bean的核心方法都在BeanFactory接口中定义。像ApplicationContext接口,ConfigurableApplicationContext接口都间接继承BeanFactory接口,既ApplicationContext调用ge…

Wwise集成到unreal

1、Wwise集成到Unreal 1.1 安装必要的软件 安装unreal 5.1;安装Audiokinetic Launcher;集成版本是Wwise 2021.1.12.7973。Audiokinetic Launcher下载地址: https://www.audiokinetic.com/zh/thank-you/launcher/windows/?refdownload&pl…

Go语言学习的第三天--下部分(Gin框架的基础了解)

每天都会分享Go的知识,喜欢的朋友关注一下。每天的学习分成两部分基础(必要的,基础不牢地动山摇),另一部分是Go的一些框架知识(会不定时发布,因为小Wei也是一名搬砖人)。但是可以保证…

哪个牌子的蓝牙耳机最好?质量最好的蓝牙耳机排行榜

随着蓝牙耳机的发展越来越快速,蓝牙耳机市场涌现出五花八门的产品,外观不同、性能不一。最近看到很多人问,哪个牌子的蓝牙耳机最好?接下来,我来给大家推荐几款质量最好的蓝牙耳机排行榜,一起来看看吧。 一…

电商使用CRM系统有什么好处,如何选择

数据显示,使用电商CRM客户管理系统后,企业销售额提高了87%,客户满意度提高了74%,业务效率提高了73%。要在竞争激烈的电商市场取得成功,与目标受众的有效沟通是有效的方法。下面说说什么是电商CRM系统?电商C…

如何使用ArcGIS生成剖面图(附练习数据)

1、概述地形剖面图指沿地表某一直线方向上的垂直剖面图,以显示剖面线上断面地势起伏状况。能够制作剖面图的软件有很多,作为GIS行业的老大,ArcGIS当然也是可以的,这里给大家详细介绍一下ArcGIS中制作剖面图的知识,希望…

2.详解DEBUG模式

文章目录DEBUG模式解决了两个问题四种开启DEBUG的方式第一种第二种第三种第四种DEBUG的PIN码可以在浏览器端调试代码使用(不推荐使用,了解就可以)DEBUG模式解决了两个问题 flask代码中如果出现了异常,我们在浏览器中不会提示具体…

图床搭建,使用typora上传

1. 准备gitee作为图床的仓库 新建仓库 准备仓库的私人令牌,后面配合使用 点击个人设置——》私人令牌 注意私人令牌,复制保存好,后面不能再看了 2. 准备PicGO,并进行相关配置 PicGo官方下载链接 下载安装好node.js,下载网址 安…

【银行测试】必看的四类题型:这可是最经典的一套题目了

目录:导读 一、根据题目要求写出具体LINUX操作命令 二、JMETER题目 三、根据题目要求写出具体SQL语句 四、测试案例设计题 金三银四面试面对大厂面试官提问,如何回答:花3天背完这100道软件测试面试题!银行测试的offer还不是手…

【GO】K8s 管理系统项目34[Linux环境–应用部署]

K8s 管理系统项目[Linux环境–应用部署] 1. 启动数据库 1.1 配置yum仓库 rm -f /etc/yum.repos.d/*.repo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/…

Vue 实现图片监听鼠标滑轮滚动实现图片缩小放大功能

前言 其实想要实现功能很简单,就是在一张图片上监听鼠标滑轮滚动的事件,然后根据上滚还是下滚实现图片的缩放。 效果: 注:该配图使用《漫画|有趣的了解一下赋值、深浅拷贝》文章图片,不存在侵权问题。 实现思路 在…

规划数据指标体系方法(下)——新海盗模型

前面已经跟大家分享了规划数据指标体系的两种方法—— OSM 和 UJM 模型,分别从目标-策略以及用户旅途的角度阐述了规划数据指标体系的过程。今天我来跟大家分享最后一种规划数据指标体系的方法——新海盗模型。 了解新海盗模型 海盗模型,即 AARRR 模型&…

脑机接口科普0014——大脑

本文禁止转载!!!! 在提到脑机接口的时候,不得不提到大脑。 在我们的思维意识中,植物是没有大脑的。这是正确的。 在我们的思维意识中,动物都是有大脑的。 但是很明显,动物都有大…

程序员看过都说好的资源网站,你值得拥有。

程序员必备的相关资源网站一.技术社区1.GitHub2.Gitee(码云)3.稀土掘金4.OSCHINA开源中国5.CSDN6.博客园7.SegmentFault(思否)8.Stack Overflow9.Golang中文社区10.ChinaUnix11.51CTO12.Ruby China二.技术教程1.Devdocs2.码农教程…

案例解读| 从集中告警平台发展趋势看城商行如何落地数字化转型(二)

上期我们以具体案例入手,分享了集中告警平台到底应该与集中监控平台解耦还是紧绑定等问题。这一期依旧从具体案例切入,跟大家一起探索下告警与服务台的对接过程,以及这个过程中可能产生的问题。上期内容,一键回顾不迷路→案例解读…

17万字 JUC 看这一篇就够了(二) (精华)

今天我们继续来学习并发编程 17万字 JUC 看这一篇就够了(一) (精华) 线程池 基本概述 线程池:一个容纳多个线程的容器,容器中的线程可以重复使用,省去了频繁创建和销毁线程对象的操作 线程池作用: 降低资源消耗,减…

网络工程师面试题(面试必看)(1)

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一.正题 1.TCP UDP协议的区别