Git switch 操作怎么用?

文章导读
Previous Quiz Next git switch 命令用于在 Git 中切换分支。它是比 git checkout 更现代的命令,于 Git 2.23 中引入,以简化分支切换过程。
📋 目录
  1. A 语法
  2. B 选项
A A

Git Switch



Previous
Quiz
Next

git switch 命令用于在 Git 中切换分支。它是比 git checkout 更现代的命令,于 Git 2.23 中引入,以简化分支切换过程。

语法

git switch <branch-name>

<branch-name> 是您需要切换到的分支名称。

选项

git switch 命令具有以下选项:

-c 或 --create

  • 使用 git switch -c 命令可以创建新分支并立即切换到该分支。

git switch -c new-branch

git switch -create new-branch

-C 或 --create --force

  • 使用 git switch -C 命令可以创建新分支并立即切换到该分支,即使该分支已存在。它会重置分支并覆盖它。

git switch -C <branch-name>

-f 或 --force

  • 它会切换分支并丢弃未提交的更改。

git switch -f <branch-name>

--detach

  • 它会切换到指定的 commit,但会使 HEAD 分离,这表示您不再位于任何分支上。

  • 这实际上意味着您正在处理一个 commit,而不会影响任何分支。

git switch --detach <commit-hash>

--guess

  • 使用此选项,您可以提供分支名称的一部分,Git 会猜测名称并返回结果,切换到该分支。

  • 此选项默认启用,但可以使用 --no-guess 选项关闭。

git switch --guess <branch-name-part>

--track

  • 此选项会自动为新分支设置从远程分支的跟踪。

  • 当您检出远程仓库中存在的分支,并需要设置本地分支跟踪远程分支时,此选项非常有用。

git switch --track <remote-branch>

--no-track

  • 当从远程跟踪分支创建分支时,Git 会自动设置分支的跟踪。

  • 为了防止分支跟踪,可以使用 --no-track 选项。

git switch --no-track <branch-name>

--orphan

  • 创建没有历史记录的新分支。适用于创建全新起始状态的新分支。

git switch --orphan <new-branch-name>

--discard-changes

  • 类似于 -f,它也会切换分支,同时丢弃工作目录中未提交的更改。

  • 当您想丢弃更改但不想强制切换时,此选项非常有用。

git switch --discard-changes <branch-name>

--merge

  • 此选项通过尝试合并工作目录中的更改来避免丢失更改。

git switch --merge <branch-name>

--progress 和 --no-progress

  • 此选项控制切换时是否需要显示进度。

  • 它通常用于可能显示进度的长时间操作,例如检出大文件。

git switch --progress <branch-name>

git switch --no-progress <branch-name>

与旧命令如 git checkout 相比,使用 git switch 可以更精确和清晰地管理分支切换。