===============================================
2020/6/22_第4次修改 ccb_warlock
更新说明:
2020/6/22:
1.更新删除分支的脚本;
2020/5/13:
1.新增将远程分支拉取到本地不存在的分支的内容;
2.新增删除分支的内容;
2020/3/6:
1. 增加将本地分支推送成一个新的远程分支的内容;
2. 增加拉取本地不存在、远程存在的分支;
===============================================
单独写篇随笔记录git命令是因为之前在windows上用git很少敲命令,大部分情况都由工具点击操作,当时只管使用却没有学习git相关的命令。
在切换到macos后,我学着用git命令去操作某些事情,然而部分的git指令不了解或不熟练,所以单独记录方便以后能够快速查到。
1)克隆源码项目
git clone <源码的ssh地址/http地址>
2)查看分支
# 只看本地分支
git branch
# 查看所有分支(本地+远程)
git branch -a
3)创建本地分支
# 根据默认分支(常见是master分支)创建开发分支(dev)
git checkout -b dev
# 将远程分支拉取到本地(并创建本地不存在的分支)
git checkout -b <本地分支名> origin/<远程分支名>
4)切换分支
# 切换本地分支
git checkout <要切换的分支名>
例如要切换到dev分支
git checkout dev
5)拉取分支的源码
当然首先这个本地分支有对应的远程分支,例如拉取master分支
git pull
# 拉取本地不存在、远程存在的分支,例如拉取dev分支
git pull origin dev
6)本地提交
git commit -m "<注释的内容>"
例如要说明本次变更内容为“fixed: 1.xxx”
git commit -m "fixed: 1.xxx"
7)推送源码
当然首先这个本地分支有对应的远程分支,例如推送master到远程分支
git push
# 将本地分支(没有对应的远程分支)推送成一个新的远程分支,例如本地分支为dev-testXXX
git push --set-upstream origin dev-testXXX
# 强制推送
git push origin HEAD --force
8)分支合并
一般开发人员需要在本地自己的分支或dev的本地分支写代码和调试,给测试发包时将发包的源码合并的release分支,生产环境部署完后合并源码到master分支。
例如需要合并dev分支最新的代码
git merge dev
9)查看分支的提交记录(id和注释)
git log
10)查看最近那次commit内容
git show
11)回滚提交
# 回滚到某个指定的commit id
git reset --hard <commit id>
# 回滚到上个版本
git reset --hard HEAD^
# 回滚到前n个版本
git reset --hard HEAD-n
12)删除分支
# 删除本地分支
git branch -D <要删除的分支名>