Git自学(二)
1、版本回退,前进
(1)log 查看历史纪录
$ git log
commit后面字符是计算出的hash值,每一个hash值对应版本信息,版本的回滚,前进其实是HEAD指针(下图第三行蓝色标注,表示当前版本)的移动。
(2)显示移动到某一版本移动的次数
$ git log --pretty=oneline
(3)基于索引值的操作版本
关键命令
$ git reset --hard 75aed0c // hard后为要跳到的版本索引值
(4)回退到被覆盖的版本
现在log中有两条记录,second commit 中新增了功能
现在不需要新功能了,于是reset到first commit 的版本
现在log中 sceond commit 记录被覆盖了
现在又再次需要新功能了,用以下命令可以找回被覆盖的commit版本
git reflog
git cherry-pick e7da2f2(hash值)
可以看出sceond commit又找回来了
需要注意的是git reflog与git log的区别
git reflog会保留所有的操作记录
但是git log不会保留reset之前的记录
2、工作区与暂存区
工作区:是文件夹中可见的目录
暂存区:前面提到的.git(Git版本库)中最重要的一个部分stage即暂存区
add、commit操作对应两个区的关系如下图。
3、添加远程仓库
Github创建仓库,要与本地库同名
windos下赋值https链接执行以下命令
$ git remote add origin https://github.com/djiyt/blogs.git //本地库关联远程库
$ git push origin master //将本地文件push到远程库
git clone https://github.com/djiyt/blogs.git //克隆远程库