Git 本地分支从核心概念到常用命令

kkcode
kkcode
2026-10-10阅读 26

一、核心概念

  • 本地分支:是你本地仓库中独立的开发线,用于隔离不同的功能开发或实验。
  • HEAD:指向当前所在分支的最新提交。
  • 工作区、暂存区、本地仓库:修改文件 → git add 加入暂存区 → git commit 提交到本地仓库(当前分支)。
  • 分支本质上是一个指向提交对象的可变指针,创建和切换都非常轻量。

二、常用操作命令

操作命令
查看本地分支列表git branch(当前分支前有 * 标记)
查看所有分支(含远程)git branch -a
创建新分支(停留在当前分支)git branch <分支名>
创建并切换到新分支git checkout -b <分支名> 或 git switch -c <分支名>
切换分支git checkout <分支名> 或 git switch <分支名>
删除本地分支(已合并)git branch -d <分支名>
强制删除本地分支(未合并)git branch -D <分支名>
重命名当前分支git branch -m <新分支名>
查看分支与远程的追踪关系git branch -vv
查看分支合并图git log --oneline --graph --all

三、分支工作流示例

# 1. 基于 main 分支创建 feature 分支
git checkout main
git pull                 # 更新本地 main
git checkout -b feature/new-login

# 2. 在 feature 分支上开发、提交
git add .
git commit -m "add login page"

# 3. 切回 main 合并 feature
git checkout main
git merge feature/new-login

# 4. 删除已合并的 feature 分支
git branch -d feature/new-login

四、注意事项

  • 切换分支前确保工作区干净(git status 显示无未提交修改),否则切换可能被拒绝或携带未提交的修改。
  • 如果当前分支有未提交的修改且想强制切换,可使用 git stash 暂存,切回后再 git stash pop 恢复。
  • 删除分支时,-d 会检查是否已合并,若未合并需用 -D(谨慎操作,丢失提交无法恢复)。
  • 本地分支与远程分支是独立的,本地删除不影响远程分支,推送到远程需用 git push origin <分支名>。

五、常见场景速查

  • 误删未合并分支:用 git reflog 找回提交 hash,然后 git checkout -b <分支名> <hash> 重建。
  • 撤销本地分支的修改:git reset --hard HEAD~1(回退一个提交,慎用)。
  • 将当前分支设置为追踪某个远程分支:git branch -u origin/<远程分支名>
评论数量:0