
git status 查看文件的改变状态
git commit -m "注释"
git log 查看提交记录
git reflog 查看提交记录
git ll 查看提交合并记录
git reset --hard 索引值 将head指向对应的提交
git reset --hard head^ 回退一级,有几个^就回退几级,多了会报错
git reset --hard head~N 回退N级
git进阶-分支
1、基本操作
创建分支
git branch 分支名
git checkout -b 分支名 (创建并切换分支)
查看分支 git branch
切换分支 git checkout 分支名
删除分支 git branch -d 分支名
2、分支合并
在需要合并的分支上调用 git merge 分支名
3、分支冲突
当两个分支冲突时需要手动处理冲突,然后add再提交
4、合并方式
快进方式合并 git merge 分支名
手动的非快进方式合并
git merge --no-ff -m "注释" dev2
自动的非快进合并
不同分支修改:a分支修改1.txt,
b分支修改2.txt
合并的时候自动的是非快进模式
5、rebase合并
rebase可以清除本地的分支历史记录,不建议在远程上用rebase
在b分支上调用 git rebase 分支a(rebase到底是啥作用需要再去B站看一下)
6、暂存分支
git stash 暂存,然后就可以去其他分支开发了
git stash pop 取出暂存
git进阶-协同开发
gitflow\远程仓库、多人协作、gitlab仓库搭建
1、gitflow


以上图片是gitflow工作流程
2、远程仓库

注意:第2步结束后需要将生成的公钥放进git的网站上
3、协同开发

4、gitlab服务器搭建过程
5、回滚
Git回滚:
- 已提交,没有push
- git reset --soft 撤销commit
- Git reset --mixed 撤销commit和add两个操作
- 已提交,并且push
- git reset --hard 要去的版本号 撤销并舍弃版本号之后的提交记录,使用需谨慎(如果确定要回滚远程仓库版本,还需要执行git push -f 这里如果权限不够,需要找管理员申请,至此,指定版本之后的远程代码都会消失掉,所以需要提前跟同事沟通好)
- git revert 要撤销的版本号 撤销,但是保留了提交记录(还需要执行git push,这里只撤销最近的版本)
git cherry -pick ID 获取其他分支的某一次提交代码