简单理解基础概念
工作区:你的工作目录
暂存区:git add 之后
本地版本库:git commit 之后
远程版本库:git push 之后
常见命令
git init 初始化一个git仓库,也就是在你的工作目录下创建一个.git文件夹
git remote add 别名 仓库地址 添加一个远程仓库地址
git remote rm 删除一个仓库
git remote -v 列出仓库列表
git fetch 获取远端分支
git branch -r 查看全部分支,包括远端分支
git pull
git push
git push -f 强推,不建议使用,生产环境建议ban掉此操作
git log
git diff 可以diff两个commit之间的差异
git show
git stash 贮藏,还原一个干净的工作区
git stash pop 弹出第一个贮藏
git checkout branchName 切换分支
git checkout commitId 切换到某个节点,这时将处于指针分离状态
git checkout fileName || . 抛弃工作区的修改,已经提交到暂存区的不会改变
git reset --hard 重置到head指针指向,会抛弃工作区和暂存区所有的修改
git reset commitId 重置到某个节点
git revert 神器啊!!!回滚全靠它,这里有一个小小的建议,每次提交只干一件事,类似于设计模式中的单一原则,相信我,回滚的时候,你会感谢自己为何如此机智
git bisect 二分查找,良好的提交习惯就用不到它
git patch 打补丁
git apply 应用补丁
开启颜色输出
命令简化
设置保护分支
应用场景:某个分支只有master才能push,这时你就可以把master分支设置成保护分支,别人只能通过merge request向你发起请求,经你code review 后合并到主线分支,流程很规范,也最容易把控,减少线上出问题的风险
网友评论