在 Git 项目中如何创建新的本地分支并切换?

文章导读
在 Git 项目中创建并切换新分支,最推荐的方式是使用 git switch -c <分支名>(Git 2.23 及以上版本),若需兼容旧版本则使用 git checkout -b <分支名>。这两种命令都能一步完成创建指针并切换工作区,适合新功能开发或问题修复场景。
📋 目录
  1. 命令速用版
  2. 原理简述
  3. 操作步骤
  4. 验证方法
  5. 常见坑
  6. 延伸阅读
A A

在 Git 项目中创建并切换新分支,最推荐的方式是使用 git switch -c <分支名>(Git 2.23 及以上版本),若需兼容旧版本则使用 git checkout -b <分支名>。这两种命令都能一步完成创建指针并切换工作区,适合新功能开发或问题修复场景。

先说结论:优先使用语义更清晰的 git switch -c,旧环境用 git checkout -b,创建前确保工作区干净。

  • 适合:隔离新功能开发、修复特定问题或基于历史提交回溯调试。
  • 先看:当前 Git 版本是否支持 switch 命令,以及是否有未提交的修改。
  • 建议:分支命名用小写字母、短横线或斜杠分隔,避免空格和特殊字符。

命令速用版

# 推荐方式(Git 2.23+)
git switch -c feature/new-login

# 兼容方式(所有版本)
git checkout -b feature/new-login

# 基于指定分支创建
git switch -c hotfix/bug main

# 基于远程分支创建本地跟踪分支
git switch -c release-1.2 `--track` origin/release-1.2

原理简述

Git 的分支本质上是一个指向特定提交对象的指针。单独运行创建命令(如 git branch)只会生成指针,不会改变当前工作目录的文件内容。而加上切换参数(-b-c)后,Git 会同时更新工作区和暂存区,使其与新分支的起始提交匹配。这样做的目的是确保新修改被隔离在新分支上,不会影响主分支或其他人的代码。

操作步骤

1. 确认当前状态
在执行操作前,先确认当前所在分支和工作区是否干净。

git status
git branch

如果提示有未提交更改,建议先提交或暂存,否则切换可能失败或覆盖文件。

在 Git 项目中如何创建新的本地分支并切换?

2. 创建并切换分支
根据版本选择命令执行。例如基于当前分支创建名为 feature/user-auth 的分支:

git switch -c feature/user-auth

终端通常会显示类似 Switched to a new branch 'feature/user-auth' 的提示。

3. 开始开发
切换成功后,后续的文件修改、添加和提交都将记录在该新分支上。

验证方法

执行以下命令检查分支列表和当前状态:

git branch
git status

git branch 的输出中,当前所在分支前会有星号(*)标记。在 git status 的提示中,第一行会显示 On branch <分支名>

在 Git 项目中如何创建新的本地分支并切换?

常见坑

1. 漏掉 -b 或 -c 参数
如果直接运行 git checkout 分支名 而分支不存在,Git 会报错而不是创建分支。创建必须带参数。

2. 未提交更改阻止切换
如果工作区有修改且与新分支内容冲突,Git 会阻止切换。需先提交、暂存或丢弃更改。

3. 分支名规范
避免在分支名中使用空格或特殊字符。推荐格式如 feature/loginbugfix/header,便于团队协作和识别。

4. 覆盖已有分支风险
某些命令组合在分支已存在时可能重置分支指向,操作前最好先确认分支名未被占用。

延伸阅读