当前位置: 首页 > news >正文

git 分支 实战

文章目录

    • 背景
    • 整体流程
    • 实战项目
    • 第一步
    • 第二步
    • 第三步
    • 最终

背景

在一个主分支中需要在分支维护另一份代码

整体流程

首先要git init
初始下git环境,然后创建分支,然后在分支上修改提交

实战项目

首先,我这里是有个已经初始化,有git本地仓库的代码

第一步

我修改了代码
此时

git status

可以看到修改的文件
如果你此时建分支

git checkout-b myBranch

执行完后,你已经身处新分支了,但是此刻你会发现,那些你修改的文件也跟过去了

基本流程是
源代码→→→→→→→→→→→→修改
↓~~~~~~~~~~~~~~~~~~~~~~~~~~~↓
myBranch分支→修改→→→→→合并修改→→→→→→→最终的拥有main主线和分支的修改

第二步

我需要回到main 主线去,将修改的先commit到主线去

gitswitchmain git commit-m"提交的备注信息"

此时你再切到myBranch分支,就没有修改记录了

gitswitchmyBranch git status

此时你会发现,当你在main 和 myBranch 分支来回切换的时候,你文件,代码是不一样的,比如main 主线有 123.txt 文件,由于你commit到主线了,所以你切换到 myBranch分支后,你会发现没有这个文件,当你切回 main 分支后,你会发现这个文件以及其他的修改又回来了

这应该就是git的魅力吧

第三步

接下来就是在myBranch分支修改了
修改完成之后提交到分支上去

git add.git commit-m"修改备注"

第四步

合入主线修改的内容
使用

git log main-n5或 git log main 或 gitswitchmain git log

切回主线
获取主线那笔提交的comnit id(假设是123456789
然后

git cherry-pick123456789

此时,如果有冲突,就会报错,如果没有冲突就直接合上去了
有冲突的话,你就

git status

看哪些文件有冲突,然后打开对应文件,你会发现有对应这种格式的内容

<<<<<<<HEAD (这里的内容:是你当前分支 myBranch 原有的代码)=======(这里的内容:是你正要摘取过来的、来自 main 分支那笔提交的代码)>>>>>>>9339e25...(提交的注释)

这个时候,你就对比,看看你要保留什么,把另一个不需要的删掉就好了
这里有两个命令可以用到

git checkout--theirs 文件路径 git checkout--ours 文件路径 如//直接替换合入的文件(这里就是冲突的文件以main为主)git checkout--theirs kernel-6.1/logo.bmp//以当前分支的文件内容为主git checkout--ours external/wifi_driver/Module.symvers

最终

等全部合好后,只需要

git add.git cherry-pick--continue

添加进入,然后继续cherry-pick 就可以了

最终结果,主线中包含主线修改,支线包含了支线的修改和主线的修改

End

http://www.jsqmd.com/news/699847/

相关文章:

  • AI记忆系统核心架构解析:从向量检索到MemoryOS实践
  • 变频器为什么要加制动电阻?该怎么选型?
  • 招聘 Agent:JD 解析、简历筛选与面试题生成的可控方案
  • 警惕AI CRM的“监控”陷阱:从技术视角谈隐私保护与数据主权的设计边界
  • 2026年3月做得好的水果礼盒品牌推荐,香妃果礼盒/鸡心果礼盒/水果礼盒/小苹果礼盒/海棠果礼盒,水果礼盒实力厂家选哪家 - 品牌推荐师
  • SNK施努卡新能源电池盒下箱体错漏装CCD在线检测解决方案
  • 嵌入式C语言适配LLM推理引擎的5大反模式(ARM Cortex-M4实测崩溃现场还原+修复前后性能对比Δ=3.8×)
  • 超元力无限方舟:创新全感沉浸,重塑沉浸式娱乐体验
  • kohya _ss训练stable-diffusion-LoRA模型保姆级教程(详细)
  • GitHub 热门项目 | 2026年04月25日
  • 深度学习在计算机视觉中的核心优势与应用实践
  • Hermes Agent 整合 OpenCode CLI 的实战经验
  • Redisson 介绍
  • 朴素分类器概率评估与优化实战
  • D6.3 PriorityClass 常用实验(2个)
  • DeepSeek创始人专访:中国的AI不可能永远跟随,需要有人站到技术的前沿
  • AutoCAD字体缺失终结者:FontCenter插件完整使用指南
  • Apache Doris 4.1:面向 AI Search 的统一数据存储与检索底座
  • DeepBump:从单张图片智能生成法线贴图的终极指南
  • 基于LLM嵌入的语义搜索引擎构建与实践
  • C++编写超低延迟MCP网关的成本控制实战(腾讯/蚂蚁级网关架构师内部分享·仅限首批200位开发者)
  • 工业Modbus调试神器:5分钟掌握OpenModScan,告别通讯故障烦恼
  • 打破传统娱乐局限,超元力无限方舟重塑沉浸体验新范式
  • 2026深度分析罗兰艺境化工材料GEO技术案例,测评景县密封件制造企业景顺密封优化过程与效果验证 - 罗兰艺境GEO
  • 算法训练营第十二天| 多数元素
  • 【行业首曝】VSCode 2026内嵌Vector CANoe Bridge插件深度评测:实现“编辑→编译→CAN帧注入→ECU响应追踪”全链路毫秒级闭环,效率提升217%?
  • Windows Cleaner终极指南:如何快速解决C盘爆红难题,释放20GB+空间
  • Java CompletableFuture 链式任务实践
  • CUDA 13内存模型变更引发的AI训练死锁频发?——基于Nsight Compute 2024.1.1的17个真实trace分析(含修复补丁)
  • 终极指南:3步掌握XELFViewer - 全平台ELF文件分析与编辑神器