我的github
Git 中切换分支的操作非常常见,以下是几种不同场景下的分支切换方法:

1. 切换到已存在的分支

使用 git checkout 或 git switch(Git 2.23+ 推荐):
 
# 传统方式
git checkout <分支名>

# 推荐方式(更安全)
git switch <分支名>

# 示例:切换到名为 develop 的分支
git switch develop
 

2. 创建并切换到新分支

使用 -b 选项:
 
# 创建并切换到新分支
git checkout -b <新分支名>

# 等效命令(推荐)
git switch -c <新分支名>

# 示例:创建并切换到名为 feature/new-feature 的分支
git switch -c feature/new-feature
 

3. 切换到远程分支(跟踪远程分支)

当从远程仓库拉取分支后,需要创建本地跟踪分支:
 
# 方式一:自动创建与远程分支同名的本地分支
git switch -c <分支名> origin/<分支名>

# 方式二:简化写法(Git 会自动匹配远程分支)
git switch -t origin/<分支名>

# 示例:跟踪远程分支 origin/dev
git switch -t origin/dev
 

4. 切换到上一个分支(类似 CD -)

使用 @ 或 - 快捷方式:
 
# 返回上一个分支(类似 cd -)
git switch -

# 等效于
git checkout -
 

5. 切换到特定提交(分离 HEAD 状态)

直接切换到某个提交哈希或标签:
 
# 切换到指定提交
git switch <提交哈希>

# 示例:切换到标签 v1.0
git switch v1.0
 

常见错误处理

  • 未提交的修改导致冲突:
     
    # 先暂存修改
    git stash
    # 切换分支后恢复
    git stash pop
    
     
  • 强制丢弃本地修改(危险操作):
     
    git switch -f <分支名>
    
     

查看分支列表

切换前可确认当前有哪些分支:
 
# 查看本地分支
git branch

# 查看远程分支
git branch -r

# 查看所有分支(本地+远程)
git branch -a

总结

  • 推荐使用 git switch:语义更清晰,避免与 checkout 的其他功能混淆。
  • 创建分支时:优先使用 -c(create)而非 -b,与 switch 保持一致。
  • 跟踪远程分支:使用 -t(track)自动关联上游分支。

如果需要更详细的操作示例或遇到特定问题,可以告诉我具体场景!
posted on 2025-06-20 17:49  XiaoNiuFeiTian  阅读(362)  评论(0)    收藏  举报