Gitlab上手指南(六)|如何利用vscode工具快速的解决代码冲突

简介: 相信很多用git的程序员对于git冲突都很恐惧。当你项目马上要上线,测试让你把主分支的代码合并一下,要做一个回归测试,然后你合并的时候,一堆冲突代码,直接让你头皮发麻。到底应该处理哪一个冲突,哪一段代码
+关注继续查看

相信很多用git的程序员对于git冲突都很恐惧。当你项目马上要上线,测试让你把主分支的代码合并一下,要做一个回归测试,然后你合并的时候,一堆冲突代码,直接让你头皮发麻。到底应该处理哪一个冲突,哪一段代码应该删除?哪一段代码不能删除呢?在你一通操作以后,发现竟然出了bug,然后上线延期。。。

首先我们来看看冲突时如何造成的

场景:如果有一个文件,你和另一个人同时修改某段代码的一部分,他把修改完的代码提交了以后,当你拉代码的时候,就会发现跟你的冲突了。

入图中所示:

上图中,提示我们READMD.me文件发生了冲突,需要我们手动解决,然后执行git add <冲突文件名> git rebase --continue即可。

那么出了这个问题应该如何解决呢?

我们借助vscode提示工具,可以看到

这里有四个选项

  • Accept Current Chagne 选择当前的修改
  • Accept Incoming Change 选择合并的修改
  • Accept Both Change 接受两者
  • Compare Chagne比较查看

这是只需要你自己查看一下你需要保留代码的哪一部分,然后选择不同的选项即可处理完毕这个冲突。不过在这之前,最好是找修改这个代码的人确认一下,他这个代码没有没有用,然后再决断需要留还是不留。

然后执行一下git add . && git rebase --continue,发现出现了下面的一幕:

完全不要慌张,这个是让你填写一个commit信息,默认会本地最后一次commit信息。那么这个如何去编辑呢?

其实这个是vim的操作模式,只需要执行下面几行命令即可搞定:

# 按i进入编辑模式
i

# 修改好commit信息
# 按esc退出编辑模式
esc

# 最后使用:wq保存并退出vim模式
:wq

到此为止,一个完整的冲突解决完毕。

如果你对vim命令实在是太陌生,不要慌,你修改完代码中的冲突部分以后,你可以在左侧的可视化工具栏里进行commit操作,效果和vim操作是一样的。

最后,谨记一点,当你修改冲突代码的时候,一定要看看这段冲突代码是谁造成的,冲突代码是不是线上代码?如果是线上代码千万不要删除,不然等你的代码一上线,bug直接让你奔溃。所以一定要跟相关的负责人去沟通一下。

相关文章
|
1月前
|
存储 文件存储 开发者
gitlab--不同的 stage 不重新下载代码、GIT_CHECKOUT、制品 artifacts
gitlab--不同的 stage 不重新下载代码、GIT_CHECKOUT、制品 artifacts
|
2月前
|
存储 Shell 开发工具
Windows系统下将代码上传至gitLab或gitHub
Windows系统下将代码上传至gitLab或gitHub
|
7月前
|
机器人
Gitlab上手指南(九)|如何通过gitlab webhooks绑定钉钉消息通知机器人
当我们push代码、合并代码、触发了CI/CD等等一系列操作的时候,都可以通过配置钉钉机器人,来接受到这些消息。下面我们实际操作一下。 找一个钉钉群,在智能群助手中添加钉钉机器人 点击...添加机器人
910 0
|
7月前
|
测试技术 开发工具 git
Gitlab上手指南(七)|如何设置保护分支并且给自己的Leader提交一个PR?
如何设置保护分支 保护分支是干嘛的呢? 前面我们在git flow工作流当中介绍过,master|main(主分支)分支是上线分支,如果每个开发人员都能随意的在主分支push代码,假如上线的时候
1067 0
|
7月前
|
存储 缓存 安全
Gitlab上手指南(五)|如何优雅的拉取和合并代码
pull or fetch 拉取代码的操作有两种形式,git pull和git fetch,那么这两种有什么区别呢? 让我们先来看看一个架构图 图中展示一个完整的git流程,为了更清晰的了解每个区域,
1171 0
|
7月前
|
网络安全 开发工具 数据安全/隐私保护
Gitlab上手指南(三)|在企业中如何注册Gitlab,如何创建公司项目?
一般企业的gitlab都是私有的,也就是部署在企业私有服务器上面,外网不能访问,比如<https://icode.xiumubai.com/>,在入职的时候,公司会给你开通企业邮箱,使用这个邮箱就可以登陆企业gitlab。
881 0
|
7月前
|
前端开发 JavaScript 程序员
Gitlab上手指南(一)|作为新手第一天入职,你该干什么?
历经千辛万苦终于入职了一家心仪的公司,作为新手第一天入职,你该干什么?本文以这个内容开头,是为了告诉新手玩家,当你入职一家互联网公司的时候,你应该注意什么?才能在公司好好的混下去。
281 0
|
9月前
|
安全 Shell API
蜻蜓:GitLab结合fortify实现自动化代码扫描实践
在甲方做安全的同学可能会有一项代码审计的工作,通常需要从gitlab把代码拉取下来,然后使用代码审计工具进行扫描,然后对结果进行人工确认; 在这个流程中需要做的事情比较繁琐,比如说gitlab如何配置token、如何自动化把代码拉取到本地、如何调用fortify实现批量扫描等诸多繁琐问题。 本篇文章以甲方安全代码安全建设为主线,分享如何让代码审计工具自动化扫描gitlab仓库里的代码。并且提供了一个便捷的实验环境供大家测试。
331 0
蜻蜓:GitLab结合fortify实现自动化代码扫描实践
|
前端开发 开发工具 git
GitLab/Git:在AndroidStudio上合并分支代码
GitLab/Git:在AndroidStudio上合并分支代码
731 0
GitLab/Git:在AndroidStudio上合并分支代码
相关产品
云迁移中心
推荐文章
更多