SCENE 06
我系卧底 —— 分支管理
尹天仇:

“其实,我是一个卧底。”


导演:

“Cut!精神分裂啊你?刚才演神父,现在演卧底?你到底是谁?”


尹天仇:

“导演,这叫多线程表演。主线剧情(master)我是神父,但在支线剧情(feature)里,我是卧底。最后两条线合并(merge),剧情才精彩啊!”

🎬 平行宇宙 (Branching)

在 Git 里,分支 (Branch) 就是平行宇宙。你可以同时开发新功能(练新角色),而不影响主线代码(正式演出)。

# 查看当前有哪些宇宙
$ git branch

# 创建一个新宇宙 "undercover" (卧底线)
$ git branch undercover

# 穿越到新宇宙
$ git checkout undercover
# 或者新版命令:
$ git switch undercover

导演提示: master (或 main) 是正在上映的电影。千万别在上面瞎改!要去自己的分支里练好了再回来。

🎬 殊途同归 (Merge)

你在卧底分支里立了大功(写完了代码),现在要把这个剧情合并回主线。

# 先切回主线
$ git switch master

# 把卧底线的剧情合并进来
$ git merge undercover

💥 剧情冲突 (Conflict)

有时候,你在主线改了剧本,在分支也改了同一句台词。合并的时候 Git 就会懵圈:

“老板,这句台词到底是念‘去死吧’还是‘我爱你’?”

这就叫冲突。你需要手动打开剧本(文件),把 <<<<<<<>>>>>>> 之间的乱七八糟修好,告诉 Git 最终台词是什么,然后重新 commit。

🎬 ACTION:分身术

请尝试以下高难度动作:

  1. 创建一个叫 dev 的分支。
  2. 切换到 dev 分支,新建一个文件 lunch_box.txt(加个鸡腿)。
  3. 切回 master 分支。注意观察: lunch_box.txt 还在吗?