场景1:创建新分支
工作中遇到的使用方式:创建新分支,修BUG,然后提交PR
bash
# 不会切换到新分支
git branch test1 基于 当前分支最新提交 新建分支test1
git branch test2 125a1d15e 基于 指定提交 新建分支test2
git fetch origin release:dev 参考 git 常用命令 Fetch
# 会切换到新分支
git checkout -b test2 基于 当前分支最新提交 新建分支test2
git checkout -b test2 125a1d15e 基于 指定提交 新建分支test2
如上操作皆有如下特性:
已存在同名分支则报错:a branch named 'test1' already exists
没有关联的远程分支,故此不可直接 git push
Further Reading :****git 常用命令 Fetch
场景2:临时查看某个提交的内容
工作中遇到的使用方式:调查BUG时查看git提交历史,临时查看某个提交的代码
bash
git checkout 125a1d15e 新建临时分支(HEAD detached at e0c619c)
git checkout origin/main
git switch -c test4 如果想保留这个临时分支,可执行此命令来创建新分支test4
如上操作皆有如下特性:
已存在同名分支则报错:a branch named 'test4' already exists
没有关联的远程分支,故此不可直接 git push
场景3:远程分支拉到本地建立关联
工作中遇到的使用方式:不通过PR的方式合入代码。直接拉取分支→修改→push
bash
git checkout -t origin/release 拉取origin/release 到本地并创建release分支 (-t 即 --track)
git push
git checkout -b release origin/release 拉取origin/release 到本地并创建release分支
git push
git checkout -b test23 origin/release 拉取origin/release 到本地并创建test23分支
git push origin HEAD:release
git checkout test6 远程仓库有test6分支 但是本地没有时 可用此法
git push
如上操作皆有如下特性:
有关联的远程分支,故可直接 git push
Further Reading :****Git常用命令汇总