#yyds干货盘点#Git版本回退的方式

听闻少年二字,当与平庸相斥。这篇文章主要讲述#yyds干货盘点#Git版本回退的方式相关的知识,希望能为你提供帮助。
Git版本回退相关视频教程(来自动力节点):https://www.bilibili.com/video/BV1iv411p7ap
相关资料下载:http://www.bjpowernode.com/?51cto
如果我们继续对 readme.txt 文件进行修改,改成如下内容:

Git is a distributed version control system.

Git is free software distributed under the GPL.

然后添加并提交:
$ git add readme.txt

$ git commit -m "append GPL"

[master 1094adb] append GPL

1 file changed, 1 insertion(+), 1 deletion(-)

【#yyds干货盘点#Git版本回退的方式】到目前为止,readme.txt 文件一共有三个版本被提交到了 Git 仓库里,我们可以用 git log 命令进行查看:
git log
$ git log //查看历史记录

commit 1094adb7b9b3807259d8cb349e7df1d4d6477073 (HEAD -> master)

Author: Michael Liao < askxuefeng@gmail.com>

Date:Fri May 18 21:06:15 2018 +0800

append GPL

commit e475afc93c209a690c39c13a46716e8fa000c366

Author: Michael Liao < askxuefeng@gmail.com>

Date:Fri May 18 21:03:36 2018 +0800

add distributed

commit eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0

Author: Michael Liao < askxuefeng@gmail.com>

Date:Fri May 18 20:59:18 2018 +0800

wrote a readme file

我们还可以加上 --pretty=oneline 参数:
$ git log --pretty=oneline

1094adb7b9b3807259d8cb349e7df1d4d6477073 (HEAD -> master) append GPL

e475afc93c209a690c39c13a46716e8fa000c366 add distributed

eaadf4e385e865d25c48e7ca9c8395c3f7dfaef0 wrote a readme file //一大串数字是 commit id ,而且每个人的都不一样。

git reset
好了,现在如果我们想把 readme.txt 文件退回到上一个版本,就可以使用 git reset 命令:
$ git reset --hard HEAD^ //HEAD表示当前版本,则HEAD^表示上一个版本,那么上上版本就是HEAD^^
HEAD is now at e475afc add distributed
cat
这时候用 cat 命令查看一下 readme.txt 的内容:
$ cat readme.txt //查看 readme.txt 文件的内容

Git is a distributed version control system.

Git is free software.

果然 readme.txt 文件返回到了上一个版本。
git reset
我们现在想要回到最新的版本,还是使用 git reset 命令:
$ git reset --hard 1094a //这里不能用HEAD而必须使用 commit id ,因为最新版本在之前返回时已经被删除了,1094a就是最新版本的 commit id,可以在之前的代码中查到
HEAD is now at 83b0afe append GPL
这时再查看一下 readme.txt 文件内容:
$ cat readme.txt

Git is a distributed version control system.

Git is free software distributed under the GPL.

果然,又回到了最新的版本。

    推荐阅读