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操作教程。

相关推荐
李慕婉学姐1 天前
【开题答辩过程】以《基于JAVA的校园即时配送系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·开发语言·数据库
GHL2842710901 天前
git cherry-pick使用
git
奋进的芋圆1 天前
Java 延时任务实现方案详解(适用于 Spring Boot 3)
java·spring boot·redis·rabbitmq
sxlishaobin1 天前
设计模式之桥接模式
java·设计模式·桥接模式
model20051 天前
alibaba linux3 系统盘网站迁移数据盘
java·服务器·前端
荒诞硬汉1 天前
JavaBean相关补充
java·开发语言
提笔忘字的帝国1 天前
【教程】macOS 如何完全卸载 Java 开发环境
java·开发语言·macos
2501_941882481 天前
从灰度发布到流量切分的互联网工程语法控制与多语言实现实践思路随笔分享
java·开发语言
小龙1 天前
【Git 报错解决】本地分支与远程分支名称/提交历史不匹配
大数据·git·elasticsearch·github
華勳全栈1 天前
两天开发完成智能体平台
java·spring·go