通常情况下,未指定本地分支,默认都是当前分支。
克隆
在多人开发中,不可能在 master
分支上进行开发,而默认拉取的是 master
分支,所以使用下面命令拉取指定的一条分支
分支
# 显示分支(默认只显示本地分支);当前所在分支前用 * 标记
## -r:查看远程分支,-a:查看所有分支,-vv:查看本地分支与远程分支的追踪关系
git branch [-r] [-a] [-vv]
# 创建本地新分支(Git 会用当前分支的最后提交的快照作为新分支工作目录的内容)
git branch <local_branch>
## or (and switch to new branch)
git checkout -b <local_branch>
# 拉取远程分支到本地并切换
git switch <remote_branch>
## or
git checkout -t <remote>/<remote_branch>
# 切换分支
git checkout <local_branch>
# 删除本地分支
git branch <-d|-D> <local_branch>
# 删除远程分支
git push <remote> :<remote_branch>
# 本地分支与远程分支的追踪关系
## 建立
git branch --set-upstream [local_branch] <remote>/<remote_branch>
## 移除
git branch --unset-upstream
拉取
git pull = git fetch + git merge
上传
撤销
其他
# 显示所有远程仓库
git remote [-v]
# 查看在自上次提交之后是否有对文件进行再次修改
git status -s
# 将该文件添加到暂存区
git add .
# 将暂存区内容添加到本地仓库中
git commit -m <message>
# 列出历史提交记录
git log --oneline
# 更新了 `.gitignore` 文件,清除缓存使更新生效
git rm -r --cached .
提交规范
提交格式为 <type>[(scope)]: <subject>
注意冒号 :
后有空格。如 feat(miniprogram): 增加了小程序模板消息相关功能
- scope:表示
commit
的作用范围,如数据层、视图层,也可以是目录名称
- subject:用于对
commit
进行简短的描述
- type:表示提交类型,值有以下几种:
值 | 说明 |
---|
feat | 新功能 |
fix | 修复 bug |
docs | 文档注释 |
style | 代码格式(不影响代码运行的变动) |
refactor | 重构、优化(既不增加新功能,也不是修复 bug) |
perf | 性能优化 |
test | 增加测试 |
chore | 构建过程或辅助工具的变动 |
revert | 回退 |
build | 打包 |