|
分支名 |
存储位置 |
本地分支 |
master |
本地 |
远程分支的追踪分支 |
origin/master |
本地 |
git 服务器上的远程分支 |
|
git 服务器 |
可选分支名 |
可选简写分支名 |
备注 |
master |
|
主分支 |
release |
|
预发布 |
develop |
dev |
开发 |
feature |
feat |
新功能 |
performance |
perf |
性能 |
hotfix |
|
紧急修复问题 |
bugfix |
|
修复问题 |
style |
|
格式(不影响代码运行的变动) |
documentation |
docs |
修改文档 |
refactor |
|
重构(即非新增功能,也非修改 bug) |
test |
|
增加修改测试用例 |
chore |
|
构建过程或辅助工具的变动 |
backup |
|
恢复 |
git branch <新建分支名> <默认HEAD||已建分支名||hash值>
# 在HEAD处创建新分支
git branch <新建分支名>
# 在已建分支处创建新分支
git branch <新建分支名> <已建分支名>
# 在指定hash处创建新分支
git branch <新建分支名> <hash值>
- 当初始化仓库后,仓库默认创建 master 分支,且 HEAD 指向 master 分支,此时还不能用此方法创建新分支
# 查看本地分支
git branch
git branch -v
git branch -vv
# 查看追踪分支
git branch -r
git branch -vr
git branch -vvr
# 查看本地分支及追踪分支
git branch -a
git branch -va
git branch -vva
git checkout <-||已建分支名||hash值>
# 切换到最近一次离开的分支
git checkout -
# 切换到已建分支
git checkout <已建分支名>
# 切换到hash值
git checkout <hash值>
git checkout -b <新建分支名> <-||已建分支名||hash值>
# 在最近一次离开的分支处创建新分支,并切换到新分支
git checkout -b <新建分支名> -
# 在已建分支处创建新分支,并切换到新分支
git checkout -b <新建分支名> <已建分支名>
# 在hash值处创建新分支,并切换到新分支
git checkout -b <新建分支名> <hash值>
- 当初始化仓库后,仓库默认创建 master 分支,且 HEAD 指向 master 分支,此时可以用此方法创建新分支并切换到新分支,此时默认的 master 分支会被删除
# 合并分支到当前HAED所指分支,即当前所在分支
git merge <已建分支名>
# 不使用fast forward合并分支
git merge --no-ff <已建分支名>
# 删除本地分支,没有被merge的分支不会被删除
git branch -d <分支名>
# 强制删除分支,即使该分支没有被merge也会被删除
git branch -D <分支名>
# 删除git服务器上的分支,并删除本地远程仓库的跟踪分支
git push origin -d <分支名>
# 查看git服务器上的远程分支
git remote show origin
# 查看git服务器上已经删除的,但本地依然在跟踪的远程分支
git remote prune origin --dry-run
# 简写
git remote prune origin -n
# 删除git服务器上已经删除的,但本地依然在跟踪的远程分支
git remote prune origin
# 或
git fetch --prune origin
# 简写
git fetch -p origin
git fetch -p