1. 前言
checkout 命令具有 分支的管理
和 文件的恢復
兩個核心功能,功能較多、不夠準確。在 git 2.23 版本中新增了 switch 和 restore命令,用于替代 checkout 命令,進而分化 checkout 命令的職責。換言之,checkout 將逐漸退出歷史舞臺
這個命令是 2020 年新增的,但到目前為止(2022-09),身邊的人還都是使用 checkout 命令進行分支的創建和切換
git 社區決定這樣做,是因為目前 checkout 命令承載了太多的功能,這讓新手們感到困惑,checkout 的兩個核心功能: 分支管理和文件恢復,未來將分別由 switch 和 restore 負責。本文記錄 switch 命令的用法
對于 checkout 命令熟悉者,上手 switch 命令毫無難度,參考命令幫助可無縫銜接
而我會給常用的命令定義別名,對于我來說,即使未來的某一天 checkout 徹底廢棄了,我只需要修改定義別名的地方即可
# 命令
git checkout
# 別名
go
2. switch 創建分支
switch 創建分支使用參數 -c, --create
,而 checkout 使用的是 -b
git switch -c <branch>
git checkout -b <branch>
switch 強制創建分支使用參數 -C, --force-create
,而 checkout 使用的是 -B
【強制創建適用于分支已存在的情況】
git switch -C <branch>
git checkout -B <branch>
以指定提交記錄創建分支
git switch -c <branch> <commit id>
3. switch 切換分支
switch 切換分支和 checkout 切換分支語法格式相同
git switch <branch>
git checkout <branch>