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

收工!!!!

相关推荐
我星期八休息10 分钟前
C++智能指针全面解析:原理、使用场景与最佳实践
java·大数据·开发语言·jvm·c++·人工智能·python
摇滚侠10 分钟前
Spring Boot 3零基础教程,WEB 开发 整合 Thymeleaf 笔记36
java·spring boot·笔记
大猫会长14 分钟前
docker安装php+apache
java·开发语言
野生技术架构师17 分钟前
JAVA 架构师面试题含答案:JVM+spring+ 分布式 + 并发编程
java·jvm·spring
71-326 分钟前
git 和 tortoisegit的快速使用教学(上传至gitee或GitHub)
git·gitee
瑞士卷@29 分钟前
MyBatis入门到精通(Mybatis学习笔记)
java·数据库·后端·mybatis
梵得儿SHI39 分钟前
Java 反射机制深度剖析:性能与安全性的那些坑
java·开发语言·安全·反射·动态代理·性能·反射机制
虫小宝1 小时前
Java分布式架构下的电商返利APP技术选型与架构设计实践
java·分布式·架构
007php0071 小时前
百度面试题解析:Zookeeper、ArrayList、生产者消费者模型及多线程(二)
java·分布式·zookeeper·云原生·职场和发展·eureka·java-zookeeper
4Forsee1 小时前
【Android】浅析 Android 的 IPC 跨进程通信机制
android·java