git解决代码冲突、合并代码

共同开发时提交代码会遇到代码冲突,第一次遇到就手足无措的我,打算写一篇博客记录下来,下次遇到稳如老狗。

在这里插入图片描述

一、远程代码已有更新记录,忘记拉取远程代码,直接提交

单人开发时,我没有先拉远程代码再提交的习惯(千万不要学习,一定要先拉代码再提交),导致我这一次遇到了冲突,不要慌,先找度娘。

找到了些不同的解决办法,最终采用了这种:

git stash //将你的所有修改文件暂存
git pull //拉取远程代码
git stash pop //释放暂存文件
...  //然后再去重新暂存提交代码

在这里插入图片描述

暂存文件后,git stash pop只会取回最近一次暂存的文件,如果想要取回某一次暂存的文件,可以用git stash list查看暂存记录,然后使用git stash apply stash@{2},stash@{2}是暂存记录中某一次暂存的标记。
VScode中可以这样操作:
git stash命令
想要释放暂存文件,点击下方的那个图标:
在这里插入图片描述
然后apply或者pop都可以,apply不会消除暂存记录,而pop会连记录一起消除掉。
在这里插入图片描述

二、更改的代码块发生冲突

如果你发现VScode显示成这个样子,那就是遇到代码块冲突了。

在这里插入图片描述

(图片源自该作者:Meltries丶https://blog.csdn.net/qq_42936023)

第一行英文选项从左至右依次为:采用当前更改、采用传入的更改、保留双方的更改、比较变更

=======上面的代码就是当前更改(你自己本地的更改),下面的就是传入的更改(他人提交的更改)。

因为相同的地方有不同改动所以发生冲突了,这时你可以和提交代码的同事沟通要怎样合并代码,然后再点击第一行的英文选项去合并。

合并后就可以正常暂存和提交了。

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值