git merge 冲突 解决 show case

废话不多说,上 case!!!

1. 更新master分支
java 复制代码
package org.example;

public class Main {
    public static void main(String[] args) {
        System.out.println("--------Git冲突测试代码开始---------");

        System.out.println("master mark 1");

        System.out.println("--------Git冲突测试代码结束---------");
    }

}
2. 更新llm_dev分支
java 复制代码
package org.example;

public class Main {
    public static void main(String[] args) {
        System.out.println("--------Git冲突测试代码开始---------");

        System.out.println("llm_dev mark 1");

        System.out.println("llm_dev mark 2");

        System.out.println("--------Git冲突测试代码结束---------");
    }

}
3. 在master解决冲突

执行 git merge llm_dev,结果如下

java 复制代码
package org.example;

public class Main {
    public static void main(String[] args) {
        System.out.println("--------Git冲突测试代码开始---------");

<<<<<<< HEAD
        System.out.println("master mark 1");
=======
        System.out.println("llm_dev mark 1");

        System.out.println("llm_dev mark 2");
>>>>>>> llm_dev

        System.out.println("--------Git冲突测试代码结束---------");
    }

}

冲突标记解释

sql 复制代码
<<<<<<< HEAD:
这行标志着冲突开始的地方。HEAD 指向的是你当前所在的分支(在这个例子中是master分支),所以在这行之后的代码是你在当前分支上的版本。

=======:
这行标志着两个不同版本之间的分隔线。它上面是当前分支的代码,下面是即将合并进来的分支的代码。

>>>>>>> llm_dev:
这行标志着冲突结束的地方。llm_dev 是你要合并进来的分支名,所以在这行之前的代码是来自 llm_dev 分支的版本。

解决冲突的方法

sql 复制代码
根据你的需求,你可以选择保留其中一个版本,或者将两者结合起来。以下是几种可能的处理方式:

保留当前分支 (HEAD) 的版本:
如果你只想保留当前分支上的代码,可以删除 ======= 到 >>>>>>> llm_dev 之间的所有内容,包括这两行标记。

保留 llm_dev 分支的版本:
如果你只想保留 llm_dev 分支上的代码,可以删除 <<<<<<< HEAD 到 ======= 之间的所有内容,包括这两行标记。

合并两个版本:
如果你想结合两个版本的内容,可以根据需要编辑代码,然后删除所有的冲突标记(<<<<<<< HEAD、======= 和 >>>>>>> llm_dev)。

采用合并两个版本的冲突解决如下

java 复制代码
package org.example;

public class Main {
    public static void main(String[] args) {
        System.out.println("--------Git冲突测试代码开始---------");

        System.out.println("master mark 1");

        System.out.println("llm_dev mark 1");

        System.out.println("llm_dev mark 2");

        System.out.println("--------Git冲突测试代码结束---------");
    }

}
4. 提交解决

git add ./*

git commit -m 'master merge llm_dev'

git push

收工!!!!

相关推荐
daidaidaiyu1 小时前
ThingsBoard 集群的核心逻辑源码分析
java
我可能是个假开发2 小时前
FTP Unicode 文件名导致 `550` 的问题分析与解决方案
java·开发语言·spring
caoerzhong2 小时前
中小企业上 WMS 该先上哪几块:JeeWMS 开源 Java 仓库管理系统的分批上线清单
java·python·开源
【JAVA】玩家3 小时前
Spring核心原理全解析:从零到生产实战
java·后端·spring
Wang's Blog4 小时前
Java框架 SpringCloud 快速入门: 实现 Feign 最佳实践(抽取方式)
java·spring cloud
MandalaO_O4 小时前
IDEA 开发(快捷键 + 调试 + 序列化)
java·ide·intellij-idea
xiaoqiMikko5 小时前
JVM 线上排查实战(七):jps 看不见它、jstack 连不上它,可它明明活得好好的
java·jvm
狼爷6 小时前
Rust/Go/Java/Python/PHP 大比拼:负载下后端框架到底差多少?
java·后端·编程语言
念何架构之路6 小时前
zap扩展生态与总结
java·前端·数据库
第七页独白7 小时前
汽车零件厂如何通过 QMS 真正落地 IATF 16949——QMS软件系统:品质检验-内审稽核-8d客诉管理:全星质量管理软件系统
java·前端·数据库