3.2 Git 版本的前进和后退
git log #查看历史版本记录
可以清楚的看到我刚刚提交的两次版本记录,接下来我多添加几次提交,以便更好地展示版本的前进和后退。
添加了许多次提交之后,再用git log查看历史记录,发现一屏都展示不完(注:空格向下翻页,b向上翻页,q退出),此时就可以用以下几种方式来展示历史记录:
-
git log --pretty=oneline #一行显示一条历史记录
-
git log --oneline #也是一行显示,并且哈希值也只显示一部分(但也足够)
-
git reflog #显示HEAD@指针情况,{}中数字表示移动到当前版本需要几步
这里值得一提的是,我们看到的这个HEAD,本质上就是一个指针,方便我们去引用,所以,我们之后的版本前进和后退,其实是对这个指针进行一个操作,让他去指向某个版本。
接下来我们就谈一谈版本前进和后退具体是怎么操作的。 -
方法一(推荐):基于哈希值操作
可以回到任意指定版本,不用考虑前进还是后退
注:此方法用git reflog去查看各个版本的局部哈希值比较好git reflog #先查看各个版本的局部哈希值 git reset --hard [某个版本的局部哈希值]
-
方法二:使用^符号(只能后退)
注:此方法用git log --oneline去查看版本信息会比较直观和方便。
git reset --hard HEAD^ #后退1步
git reset --hard HEAD^^ #后退2步
注:一个^表示后退一步,n个^表示后退n步
- 方法三:使用~符号
注:此方法也用git log --oneline去查看版本信息会比较直观和方便。git reset --hard HEAD~n #后退n步 git reset --hard HEAD~2 #后退2步