IDEA解决Git冲突详解

目录

前言:

何为冲突

冲突演示

IDEA冲突解决

小结:


前言:

相信大家多多少少都有了解和使用过Git,作为Java程序员idea可谓是无敌的存在了,那么如何使用idea解决Git冲突呢?不瞒大家前段时间在公司把同事代码合丢了,还好给找回来了,以此片文章来警示自己,同时希望对大家有所帮助。

何为冲突

当多个开发者同时开发软件时,远程仓库代码就有可能被同事修改。如果同事所修改代码位置,和自己本地修改代码位置相同(相同指文件以及代码行数相同),如果同事先于你将代码push到远程仓库,当你再去push或者pull的时候就会产生冲突。

冲突的原因是因为相同代码位置,同事和自己写的代码是两个版本。当你push的时候,Git对于冲突的位置,不知是选择你写的代码还是同事的。pull到本地也是同理。

那么就需要先在本地将冲突解决,然后才可以推送到远程仓库。

冲突演示

这是我远程仓库的代码,这个时候我将 hello world 修改为 hello.

这个操作相当于模仿同事对远程仓库代码做了修改。

注意:

可以看出对于12行代码,远程仓库做出的修改和我本地的修改不一致,这个时候push或者pull的时候就会产生冲突,就是不知选择谁对于这一行代码修改的版本。

IDEA冲突解决

这个时候commit之后,进行push代码。idea就会提示需要合并本次提交。

注意:

**1)Merge:**自己选择怎么合并代码(个人建议选择这个)

**2)Accept Yours:**直接使用自己写的版本。

3)Accept Theirs:直接使用远程仓库版本。

点击Merge之后,会出现如下三列界面。最左边是自己写的版本,最右边是远程仓库版本,中间是合并后最终版本,这个时候也可以清楚看到我刚刚进行的修改。

我们可以点击 X 或者 >> 来选择使用该代码还是放弃该代码。可以即使用自己的版本也使用远程仓库版本,需要根据业务逻辑进行选择。冲突解决完成后,需要重新进行push操作。

上面标注的那个按钮,点击之后,可以只看代码冲突的部分,个人感觉还是非常实用的。

小结:

IDEA对于Git的操作是非常全面的,后续会持续更新IDEA对于Git操作教程。

相关推荐
我要添砖java几秒前
<JAVAEE> 多线程4-wait和notify方法
android·java·java-ee
Rysxt_9 分钟前
Spring Boot SPI 教程
java·数据库·sql
海边夕阳20069 分钟前
主流定时任务框架对比:Spring Task/Quartz/XXL-Job怎么选?
java·后端·spring·xxl-job·定时任务·job
q***985218 分钟前
VS Code 中如何运行Java SpringBoot的项目
java·开发语言·spring boot
秦jh_21 分钟前
【git】企业级开发模型
git
帧栈28 分钟前
开发避坑指南(72):HttpHeaders 的add()方法和set()方法有什么区别?
java·spring·http
unclecss42 分钟前
把 Spring Boot 的启动时间从 3 秒打到 30 毫秒,内存砍掉 80%,让 Java 在 Serverless 时代横着走
java·jvm·spring boot·serverless·graalvm
tuokuac1 小时前
@PathVariable与@RequestParam
java·spring
q***16081 小时前
Tomcat的server.xml配置详解
xml·java·tomcat
程序员西西1 小时前
SpringBoot整合Apache Spark实现一个简单的数据分析功能
java·后端