git switch

发布于:2025-07-23 ⋅ 阅读:(16) ⋅ 点赞:(0)

1.简介

git switch 是 Git 2.23 版本引入的一个新命令,专门用于分支切换操作,旨在替代 git checkout 的部分功能,使 Git 命令更加语义化和专一化。

与 git checkout 相比,git switch 专注于分支切换,而 git restore 则专注于文件恢复,这样的分工使得 Git 命令更加清晰易懂。

2.格式

git switch [<options>] [--no-guess] <branch>
git switch [<options>] --detach [<start-point>]
git switch [<options>] (-c|-C) <new-branch> [<start-point>]
git switch [<options>] --orphan <new-branch>

3.选项

-c, --create <branch>
	创建一个新分支然后切换过去。
-C, --force-create <branch>
	强制创建一个新分支然后切换过去。
-d, --detach
	用于将 HEAD 指针从当前分支移动到一个指定的提交(commit) 或标签,从而进入"分离头指针" (detached HEAD) 状态。
	详细信息请参阅 git-checkout[1] 中的 “DETACHED HEAD” 部分。
--guess, --no-guess
	当尝试切换到一个不存在的分支时,Git 会尝试猜测你是否想基于远程跟踪分支创建一个新分支。
	--guess 是默认行为,使用——no-guess 来禁用它。
--orphan <new-branch>
	创建一个没有父提交的新分支。
-t, --track
	选项用于在创建并切换到一个新分支时,同时设置该分支跟踪指定的远程分支。
-
	快速切换回上一个分支(非常实用)

4.示例

(1)切换到指定分支。

git switch feature/login

(2)基于当前分支创建一个新分支,然后切换过去。

git switch -c feature/login

这相当于旧的:

git checkout -b feature/login

(3)强制创建分支(覆盖已存在的分支)。

git switch -C feature/login

(4)快速切回到上一个分支。

git switch -

(5)创建无历史的新分支。

git switch --orphan gh-pages

(6)将远端分支拉取到本地。

git switch -t origin/login

5.小结

git switch 是一个专一、语义明确的分支切换命令,相比 git checkout 的多功能,它只专注于分支切换操作,使得 Git 命令更加清晰易懂。

在日常开发中,建议使用 git switch 来替代 git checkout 的分支切换功能,配合 git restore 处理文件恢复操作,这样可以使你的 Git 工作流更加规范和专业。


参考文献

Git - git-switch Documentation


网站公告

今日签到

点亮在社区的每一天
去签到