在使用git pull代码时,经常会碰到有冲突的情况,提示如下信息:

error: Your local changes to 'c/environ.c' would be overwritten by merge. Aborting.

Please, commit your changes or stash them before you can merge.

复制代码

这个意思是说更新下来的内容和本地修改的内容有冲突,先提交你的改变或者先将本地修改暂时存储起来。

处理的方式非常简单,主要是使用git stash命令进行处理,分成以下几个步骤进行处理。

1、先将本地修改存储起来

$ git stash

复制代码

这样本地的所有修改就都被暂时存储起来 。用git stash list可以看到保存的信息:

其中stash@{0}就是刚才保存的标记。

2、pull内容

暂存了本地修改之后,就可以pull了。

$ git pull

复制代码

3、还原暂存的内容

$ git stash pop stash@{0}

复制代码

也可以简写为:

$ git stash pop

复制代码

系统可能有以下两种提示,具体提示如下类似的信息:

a) Git 自动合并代码成功

No changes added to commit (use “git add” and/or “git commit -a”)

Dropped stash@{0} (b028083248620a143b6dcef975dda7fea5058a02)

复制代码b) Git 自动合并代码失败, 需要人工合并代码

Auto-merging c/environ.c

CONFLICT (content): Merge conflict in c/environ.c

复制代码

意思就是系统自动合并修改的内容,但是其中有冲突,需要解决其中的冲突。

针对以上两种情况的解决方案:

4-a、更新代码成功

对于 a) 情况, 代码 已经由github 自动合并 所以我们本地代码与 远程仓库代码已保持一致, 可以选择提交代码 或者 继续开发。

4-b、解决文件中冲突的的部分

对于 b) 情况, 我们就必须得解决冲突代码并提交了,打开冲突的文件,会看到类似如下的内容:

其中Updated upstream 和=====之间的内容就是pull下来的内容,====和stashed changes之间的内容就是本地修改的内容。碰到这种情况,git也不知道哪行内容是需要的,所以要自行确定需要的内容。

执行git status会显示这些文件没有合并(unmerged),这些有冲突的文件里面会添加像下面的冲突标识符:

<<<<<<< HEAD:file.txt

Hello world

=======

Goodbye

>>>>>>> 77976da35a11db4580b80ae27e8d65caf5208086:file.txt

复制代码

你所需要的做是就是编辑解决冲突,(接着把冲突标识符删掉),再执行下面的命令:

$ git add file.txt

$ git commit –m ‘commit info’

复制代码

ps: -m 后面的字符串就是提交的注释, 使用 add 是将 修改内容 暂存到本地仓库, 原理图如下:

note:现在很痛苦,等过阵子回头看看,会发现其实那都不算事。

git没有冲突 但是提示有_git 解决冲突相关推荐

  1. git没有冲突 但是提示有_git 代码冲突处理

    在使用git pull代码时,经常会碰到有冲突的情况,提示如下信息: error: Your local changes to 'c/environ.c' would be overwritten b ...

  2. git团队合作(代码合并,解决冲突等)(问道学院)

    邀请新成员 同意邀请 好了现在全村的希望和全屯的希望可以共同开发一个项目了. [克隆]第一次下载代码: 注意:1:-b test :表示克隆的是远程仓库的test分支代码           2:克隆 ...

  3. git什么情况下会产生冲突以及如何优雅的解决冲突

    制造冲突 在github上创建一个仓库. 在本地两个文件夹分别clone同一仓库.称之为仓库A,仓库B. 在仓库A修改文件,提交到远端. git add -A git commit -m " ...

  4. 【工具篇】git常用命令--关于分支切换、解决冲突覆盖

    目录 关于分支 解决冲突覆盖代码 提交记录码获取的地方: 关于分支 git branch 查看当前分支 git checkout -b dev-wangxiaobo 新建本地分支 git branch ...

  5. 【Git】制造冲突以及解决冲突的详细方法

    介绍 这里是小编成长之路的历程,也是小编的学习之路.希望和各位大佬们一起成长! 以下为小编最喜欢的两句话: 要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡. 一个人为什么要努力? ...

  6. git合并分支时如何解决冲突

    在项目开发过程,我们合并分支时经常会碰到冲突的问题,下面通过一个简单的例子演示下冲突是如何产生的以及如何去解决冲突. 1.冲突的产生 1.1.主干分支代码 在主干分支有两个文件 main.cpp #i ...

  7. 最详细的Git原理总结+如何解决冲突

    原文路径是https://www.cnblogs.com/cb0327/p/5066685.html 目录 1.提交 代码到远程仓库 2.将远程仓库代码更新到本地 3.更新到本地仓库时, 出现冲突,解 ...

  8. .net 本地文件管理 代码_Gitee 在线解决代码冲突上线,解决冲突不再需要 Git 命令...

    IT服务圈儿 有温度.有态度的IT自媒体平台 来源: OSCHINA 社区 [http://www.oschina.net] 作者:码云Gitee 许多开发者在使用 Git 的时候会遇到代码冲突的情况 ...

  9. 【git】git解决冲突

    git解决冲突 1.概述 2.rebase使用 3.rebase相关命令 4.参考 1.概述 git解决冲突有两种办法: rebase merge 先说结论,解决冲突时尽量使用rebase.原因是因为 ...

最新文章

  1. 12岁AI开发者现身DuerOS发布会:得开发者得天下
  2. [轉]fckeditor添加自定义按钮
  3. Python traceback 模块, 打印异常信息
  4. 9. Leetcode 27. 移除元素 (数组-同向双指针-快慢指针)
  5. 8086汇编_除法指令
  6. php7 加的新特性积累
  7. javascript的执行上下文
  8. linux ifconfig
  9. 自然语言处理——BERT情感分类实战(一)之预处理
  10. 畅通工程(并查集模版题)
  11. 解决安装Win 7后XP无法启动问题
  12. 模式识别的发展及应用
  13. android广告平台哪个好用,最新!59个信息流广告平台数据榜单!
  14. 关于使用nRF Studio 批量烧写NRF52840 不成功的解决方案
  15. 官方代码 Deeplab v3+ resnet101 做backbone
  16. (CVPR 2020) PointGroup: Dual-Set Point Grouping for 3D Instance Segmentation
  17. Windows10的虚拟桌面
  18. 华为抱歉进程com.android.phone,搬运:华为手机adb工具,可以卸载华为全家桶
  19. REST API 详解
  20. Python利用Twitter API根据tweet id抓取tweet(via tweepy/twython)

热门文章

  1. 解决小程序页面路径最多只能十层限制
  2. 【快速排序】c++实现快速排序代码
  3. mysql之vip漂移
  4. mac误删相片怎么恢复?
  5. Hyperspectral 高光谱数据在开始处理之前需要掌握的
  6. python运行程序为什么会卡住_为什么我的 Python 程序卡住啦!
  7. python处理docx zipfile_python zipfile 创建处理压缩包
  8. Error creating bean with name ‘XXX‘(bookMapper)
  9. 计算苹果的价格(计算物品类的价格可借鉴)
  10. 互联网江湖,“鲶鱼”如何变“鲨鱼”?