Git 版本管理之回到过去

准备

首先在我 git 管理的项目下建立一个 test.txt 作为测试文件。第一次 commit 时,在 test.txt 中写下“第一次测试”的文字作为记号。第二次 commit 时,在 test.txt 中写下“第二次测试”的文字作为记号。

这时候我们就处于第二次 commit 后的状态了。也就是说 test.txt 文件里面会有两句话。如下图。
在这里插入图片描述

git 日志中也有两次提交记录了。如下图所示。查看 git 日志记录可以用下面的命令行。

git log

在这里插入图片描述

退回过去

问题来,我在第二次 commit 后的状态继续操作,不小心删除了什么,如何让项目回退到第一次 commit 的状态呢?(也就是 test.txt 里面只有“第一次测试”的文字的时候)

这时候就要用到 git 的版本管理功能了,让项目回退到我们希望的某个 commit 点。我们可以使用下面的命令行来让项目回退到过去。
hard 后面的字符是你希望退回的时间点的环境指针。如下图所示。

git reset --hard 9be931523xxxxxxxxxxxxxx7a43dd

在这里插入图片描述
这时候,你再打开 test.txt 文件,你就回发现,里面的内容已经退回第一次 commit 时的状态了。
在这里插入图片描述
在用 git log 命令看一下日志记录。你会最新的日志记录也是显示第一次 commit 你会发现第二次 commit 的记录没了。
在这里插入图片描述

回到未来

当我将项目回退到过去后,已经发现自己的错误在哪里后,我怎么讲项目再回滚到未来呢?(这里的未来指的是我们回退到第一次 commit 之前,即第二次 commit 的时间点)
同样,我也可以使用 reset 命令。只是未来时间点的环境指针,需要使用下面命令来查询。

git reflog

在这里插入图片描述
如上图的红色箭头所示,我们可以知道未来时间点的环境指针。然后使用 reset 命令即可。

git reset --hard 026d03c
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章