一:简介
GIT是一个开源的分布式的版本控制系统,是由Linus 为了管理Linux内核开发而开发的一个开源的版本控制软件。相比SVN,它采用分布式版本库方式。
二:工作区,暂存区和版本库
左侧为工作区,编辑文件所在的目录,右侧为版本库,其中index区域是暂存区,标记为"master"代表master主分支。
三:基本操作指令
1.创建仓库
a.当前目录创建仓库
git init
b.指定目录创建仓库
git init 目录名
2.设置配置
a.全局配置
git config --global user.name woniu git config --global user.email woniu@163.com
b.设置本地仓库配置
git config --local user.name woniu git config --local user.email woniu@163.com
c.查看配置信息
git config --global --list
3.工作区文件新增到暂存区
a.提交指定文件
git add a.cpp
b.提交当前目录所有文件
git add .
c.把提交过暂存区,已经发生改变的文件再次提交到暂存区
git add -u
4.暂存区文件提交到版本库
git commit -m "初始版本"
5.查看git提交日志
a.全部日志
git log
b.简化日志
git log --oneline
c.查看前5个日志
git log -n5 --oneline
d.查看所有日志
git log --all
e.图像化查看所有日志
git log --all --graph
f.图形化界面查看
gitk
6.查看上次提交后是否有修改
git status
7.查看差异
a.查看工作区与暂存区差异
git diff
b.查看暂存区与仓库之间的差异
git diff --cached
c.比较不同commit的差异
git diff HEAD1 HEAD2
8.清空暂存区,工作区修改
git reset --hard
9. 删除工作区和暂存区文件
git rm 文件名
10.重命名文件
git mv a.cpp b.cpp
11.版本回滚
a.恢复暂存区和HEAD一致
git reset HEAD
b.恢复暂存区指定文件与HEAD一致
git reset HEAD -- 文件名
c.恢复工作区与暂存区一致
git checkout -- 文件名
d.回退到指定commit,会清楚之后提交的commit
git reset --hard HEAD
扫码关注公众号
专注分享C/C++,C++(11,14,17),STL,Java,Spring,mybatis,mysql,redis,分布式,高并发,设计模式,爬虫,docker,shell编程等相关技术,还有高薪互联网职位内推,在这里一起探讨,一起学习,一起进步,同时不定期分享视频书籍资源,充分利用碎片化时间,让我们的技术之路更加有乐趣!