参考文章:
1、Git内部原理
http://blog.jobbole.com/26209/
2、廖雪峰Git教程
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
一、版本库创建
命令:git init
操作:创建一个新的文件夹(GitLearn);切换到文件夹目录下,执行git init命令
结果:在文件夹内生成一个.git文件夹
此时.git文件夹内容如下
二、添加文件到暂存区
命令:git add 新增文件路径
git add . //增加此次所有新增和修改的内容
操作:在GitLearn下新见一个OC项目(GitLearnDemo),然后执行命令git add GitLearnDemo
此时.git文件夹变化:
1、新增一个index文件(暂存区)
2、objects文件夹新增N个文件夹,如图
三、提交修改(暂存区到分支)
命令:git commit -m "提交描述"
此时.git文件夹变化:
1、新增一个COMMIT_EDITMSG文件,记录此次提交的描述内容
2、refs/heads 目录下新增master文件,内容是当前最新的版本号
3、新增logs文件夹:HEAD文件、refs/heads/master
四、其他命令记录
1、查看仓库状态
git status
2、查看文件被修改了什么
git diff 文件路径 //默认情况下应该是比较工作区和暂存区中文件的不同
3、查看日志
git log
退出git log命令方式:英文状态下输入 q
4、回退到某一个版本(执行回退命令时,.git文件夹下面应该会生成一个ORIG_HEAD文件)
git reset —hard commitid
git reset —hard HEAD^
5、把暂存区的修改回退到工作区
git reset HEAD 文件路径
6、查看命令历史
git reflog
7、丢弃工作区的修改
git checkout — 文件路径