参考:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013744142037508cf42e51debf49668810645e02887691000
之前有过对git和github的学习,不过并不深,这几天看了廖学锋的git教程,觉得有所收获,记下这篇博文
####################################################
前期工作
在C盘新建一个文件夹git,进入此文件夹,新建一个readme.txt文件,添加内容为
Git is a distributed version and control system. Git is free software distributed under the GPL
mkdir git cd git git init
git add readme.txt git commit -m "append GPL"
###################################################
继续添加文本,修改readme.txt文件,加入:
Git is a version control system. Git is free software
git add readme.txt git commit "add distributed"
git log
有时候修改次数很多,导致版本数量大,输出信息太多,加上--pretty=oneline参数可以简化信息:
git log --pretty=oneline
此处的第一列的信息为commit id(版本号)
在Git中,用HEAD表示当前版本,也就是最新的提交f7f259311134efdda5e4aaf259f63ae3a7a9580b
上一个版本是HEAD^,上上一个版本就是HEAD^^,上上上一个版本就是HEAD^^^(或HEAD~3),依次类推
现在要把当前版本“add distributed”回退到上一个版本"append GPL",可以使用Git命令git reset
git reset --hard HEAD^
使用git log 可以看出最新的版本add distributed已经消失了,如果想返回到最新的版本,有两种方法:
1.如果上面的命令行窗口没有被关掉,可以在上面找到add distributed的版本号,就可以指定回到未来的某个版本:
git reset --hard f7f259311134efdda5e4aaf259f63ae3a7a9580b
2.如果命令行窗口已经关掉,你也记不起来最新版本的版本号。Git提供了一个命令git reflog用来记录每一次命令:
git reflog
#####################################################
git log 可以查看提交历史
git reflog可以查看命令历史