IDEA解决Git冲突详解

目录

前言:

何为冲突

冲突演示

IDEA冲突解决

小结:


前言:

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

何为冲突

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

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

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

冲突演示

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

IDEA解决Git冲突详解_第1张图片

IDEA解决Git冲突详解_第2张图片

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

IDEA解决Git冲突详解_第3张图片IDEA解决Git冲突详解_第4张图片

 注意:

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

IDEA冲突解决

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

IDEA解决Git冲突详解_第5张图片

注意:

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

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

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

IDEA解决Git冲突详解_第6张图片

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

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

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

IDEA解决Git冲突详解_第7张图片

小结:

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

你可能感兴趣的:(Git,intellij-idea,git,java,ide)