分支与协作
学习目标
- 理解分支的概念和使用场景
- 掌握创建、切换、合并分支的操作
- 了解 Pull Request 的协作流程
- 学会解决简单的合并冲突
本节定位
分支在个人项目中用得不多,但在团队协作和开源贡献中是必备技能。作为入门,你只需要理解概念、会基本操作就行。等到实际需要时再回来深入。
什么是分支?
用装修来类比
想象你住在一间公寓里(main 分支 = 你正在住的家)。你想尝试一种新的装修风格,但不确定效果好不好。
你有两个选择:
- 直接在家里改——如果改坏了,你就没得住了
- 先租一间一模一样的公寓(新分支),在那边尝试——如果好看就搬过来,不好看就退租
分支就是选项 2。你在新分支上随便改,改好了合并回 main,改坏了直接删掉,main 完全不受影响。
在代码中的实际场景
你正在做一个 AI 图像分类项目,main 分支上是能正常运行的代码。
现在你想尝试:
- 把模型从 CNN 换成 Vision Transformer
- 不确定效果会不会更好
- 改动很大,可能需要好几天
如果直接在 main 上改:
❌ 改到一半代码跑不了了
❌ 老板突然让你修个 bug,但 main 已经被你改乱了
❌ 最后发现 ViT 效果不好,想回去——已经改了 50 个文件
如果用分支:
✅ 在 feature/vit 分支上慢慢改
✅ 老板让修 bug?切回 main,修完推上去,再切回来继续
✅ 发现 ViT 不行?删掉分支,main 毫发无损