在日常开发中,你可能需要在不同的功能或修复之间来回切换。比如你正在开发一个新功能,突然发现线上有个紧急 bug 要处理。这时候,Git 的分支切换功能就派上用场了。
查看当前所在分支
在切换之前,先看看你现在处于哪个分支。打开终端,输入以下命令:
git branch
你会看到类似这样的输出:
* main
feature/login
bugfix/header
带星号 * 的就是当前所在的分支,比如这里是 main。
切换到已存在的分支
假设你要从 main 切换到 bugfix/header 分支去修问题,只需要一条命令:
git switch bugfix/header
执行后,终端会提示你已经切换到了该分支,项目文件也会自动变成那个分支的内容。
如果你还在用老版本的 Git(低于 2.23),可能还不支持 switch 命令,可以用传统的 checkout:
git checkout bugfix/header
效果是一样的,只是写法不同。
创建并切换新分支
有时候你想开个新分支来写代码,比如要加一个搜索框功能,可以这样一步完成:
git switch -c feature/search-box
这个 -c 参数的意思是“创建并切换”。执行后,Git 会新建一个叫 feature/search-box 的分支,并自动切过去。
同样地,如果用 checkout,写法是:
git checkout -b feature/search-box
切换前保存工作进度
如果你在当前分支改了一些代码但还没提交,直接切换可能会被阻止。Git 不允许覆盖未保存的更改。
解决办法有两个:要么先把改动提交了:
git add .
git commit -m "临时保存搜索框样式修改"
要么把当前进度“暂存”起来:
git stash
切换完分支处理完事,再回来恢复:
git stash pop
就像把东西放进抽屉,用的时候再拿出来。
快速回到上一个分支
你从 main 切到了 bugfix/header,改完想回 main,不用记名字,直接用:
git switch -
或者
git checkout -
这里的短横线 - 表示“上次所在的分支”,特别适合频繁来回切换的场景。