Python学习笔记·第29天:Git进阶——分支操作与合并冲突

一、什么是分支?

一句话:分支就是你的"平行宇宙"。在不影响主线的情况下,你可以在自己的分支上自由修改、开发新功能,改好了再合并回去。

生活比喻:你在写一篇文章,突然想尝试另一种写作风格,但又不想把原稿改乱。于是你复制一份副本,在副本上改。改好了再决定要不要替换原稿。这个副本就是"分支"。

二、分支核心命令

1. 查看本地分支

bash 复制代码
git branch  # 查看所有本地分支,前面带*的是当前所在的分支

2. 创建本地分支

bash 复制代码
git branch 分支名  # 创建一个新分支

3. 切换分支

bash 复制代码
git checkout 分支名           # 切换到指定分支
git checkout -b 分支名         # 创建并切换到新分支(最常用)

4. 合并分支

bash 复制代码
git merge 要合并的分支名       # 把指定分支的修改合并到当前分支

5. 删除分支

bash 复制代码
git branch -d 分支名   # 删除已合并的分支(安全检查)
git branch -D 分支名   # 强制删除(不管有没有合并)

三、合并冲突

什么时候会产生冲突? 两个分支修改了同一个文件的同一行,Git 不知道该保留哪个版本,就会产生冲突。

怎么解决?

  1. 打开冲突文件,找到冲突标记 <<<<<<<=======>>>>>>>
  2. 手动选择保留哪部分内容,删除冲突标记
  3. git add .git commit -m "解决冲突"

四、实战演练

完整流程:创建dev分支 → 在dev上改代码 → 合并回master → 删除dev

bash 复制代码
# 第1步:创建并切换到dev01分支
git branch dev01      # 创建dev01分支
git checkout dev01    # 切换到dev01(也可以用git checkout -b dev01一步完成)

# 第2步:在dev01分支上修改文件
# ... 写代码 ...

# 第3步:提交修改
git add .
git commit -m 'add file02 on dev'

# 第4步:切回master分支
git checkout master

# 第5步:把dev01的修改合并到master
git merge dev01

# 第6步:删除dev01分支(已经合并了,不需要了)
git branch -d dev01

五、开发中分支使用原则

分支类型 作用 说明
master 生产分支 线上运行的代码,不能直接在上面改
develop 开发分支 从master创建,日常开发在这里
feature/xxxx 功能分支 从develop创建,开发新功能,完成后合并回develop
hotfix/xxxx 修复分支 从master创建,紧急修复线上Bug,完成后合并回master和develop

今日核心总结

  1. 分支 = 平行宇宙:在自己的分支上随便改,不影响主线
  2. 核心命令
    • git branch → 查看分支
    • git checkout -b 分支名 → 创建并切换分支(最常用)
    • git merge 分支名 → 合并分支
    • git branch -d 分支名 → 删除分支
  3. 合并冲突 :两个分支改了同一行 → 手动解决 → addcommit
  4. 分支原则master 放稳定代码,develop 放开发代码,新功能开 feature 分支
相关推荐
xiaoyuchidayuma1 小时前
已知 ud、uq 求解三相相电压并计算调制比
笔记·学习
奋斗的小方1 小时前
Java进阶篇1-3:集合框架(单列集合)
java·windows·python
B8017913Y1 小时前
上课记笔记写不完不会整理?2026学习笔记生成使用场景该怎么选
人工智能·笔记·学习
乐以礼1 小时前
#100DaysOfAgent Day 5
python·ai
江华森2 小时前
Gephi 可视化 + NetworkX 网络分析——《釜山行》人物关系(三)
数据库·python
进击切图仔2 小时前
基于千问的白盒蒸馏操作教学文档
服务器·人工智能·python
霸道流氓气质2 小时前
Harness Engineering 模块化指令实战:告别 600 行巨型 AGENTS.md
开发语言·人工智能·python
小园子的小菜2 小时前
Java设计模式精讲:创建型+结构型模式(含生产级案例+相似模式对比)
学习·设计模式
_muffinman2 小时前
梁山派学习笔记1
笔记·学习