- Git 入门
- Git - 首页
- Git - 版本控制
- Git - 基本概念
- Git - 命令行
- Git - 安装
- Git - 首次设置
- Git - 基本命令
- Git - 获取帮助
- Git - 工具
- Git - 速查表
- Git - 术语
- Git 分支
- Git - 简述分支
- Git - 创建新分支
- Git - 切换分支
- Git - 分支和合并
- Git - 合并冲突
- Git - 管理分支
- Git - 分支工作流程
- Git - 远程分支
- Git - 跟踪分支
- Git - 变基
- Git - 变基与合并
- Git - 合并提交
- Git 操作
- Git - 克隆操作
- Git - 打标签操作
- Git - 别名操作
- Git - 提交操作
- Git - 暂存操作
- Git - 移动操作
- Git - 重命名操作
- Git - 推送操作
- Git - 拉取操作
- Git - Fork 操作
- Git - 修补程序操作
- Git - 差异操作
- Git - 状态操作
- Git - 日志操作
- Git - HEAD 操作
- Git - Origin Master
- Git 撤销
- Git - 撤销更改
- Git - 检出
- Git - 恢复
- Git - 重置
- Git - 恢复操作
- Git - Rm
- Git - 切换操作
- Git - Cherry-pick
- Git - 修正
- Git 在服务器上
- Git - 本地协议
- Git - 智能 HTTP 协议
- Git - 哑 HTTP 协议
- Git - SSH 协议
- Git - Git 协议
- Git - 在服务器上获取 Git
- Git - 设置服务器
- Git - 守护进程
- Git - GitWeb
- Git - GitLab
- Git - 第三方托管选项
- 分布式 Git
- Git - 分布式工作流程
- Git - 为项目做贡献
- Git - 维护项目
Git 切换
git switch 命令用于在 Git 中切换分支。它比git checkout 命令更现代,并在Git 2.23 中引入,以简化分支切换过程。
语法
git switch <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
它切换到给定的提交,但分离HEAD,这表示您不再位于任何分支上。
这实际上意味着您正在处理一个提交,而不会影响任何分支。
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 更精确和清晰地管理分支切换。
广告