开发者学堂课程【Git 基础入门到实战详解:Git 的版本回退操作】学习笔记,与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/714/detail/12757
Git 的版本回退操作
内容介绍:
一、时光穿梭机-版本回退
二、查看版本,确定需要回到的时刻点
三、回退指令:
一、 时光穿梭机-版本回退
当把 git 从仓库的指令用熟之后,就可以发现一个有趣的知识。
1、介绍:
因为它可以看作在开发这个里面的一个后悔药。在写代码时,难免会出一些差的,导致想回到以前,但是在写代码的时候,如果用了 git,那这个就是可能的。
即便把代码误删了,或者误修改了,都是可以,是可以用时光机回到以前的。
版本回退分为两步骤进行操作
2、步骤:
①查看版本,确定需要回到的时刻点
指令:
git log
git log--pretty=oneline 查看时间点(日志)这里推荐用此种。
②回退操作
指令:Git reset-hard 提交编号
二、查看版本,确定需要回到的时刻点
分别运行查看版本的两种指令:
第一种指令,git log:
此指令将会把以前的操作一一列举出来,这里
commit7c1eadd313d1d5d68a82fc933d0a7425f5803407(HEAD->master) 此指令很重要,为某一时间点操作的序号,通过特殊的编码为此字符串。(HEAD->master)为当前最新状态。找到之前的时间点进行穿梭。
第二种指令:git log--pretty=oneline
两种指令执行的显示效果不同。只显示 commit id 和注释(很重要,一定要写)
两种方法,因情况而定。但最终得到的都是 commit ID。但第二种方式更加简便。
三、回退指令
Git reset-hard 提交编号(为第一步的 commit Id)
案例:
想做时光机回到创建好第一个文件readme.txt 的时候。
复制 commit id(注意需要鼠标右键复制)
此时没有执行注意文件内容:
执行后文件内容,回到了最初的状态:
回到过去的任务已经完成需要过去的代码可复制查看。
四、回到将来
进行查询信息
但是发现只显示一个版本号。(注意:此指令只显示当前的版本号)
由于我们打开窗口,以上会显示之前操作后的版本号,但是关闭窗口后以前的版本号将会消失。
注意:
回到过去之后,想要再回到之前最新的版本号的时候,则需要使用指令去查看历史的操作,已得到最新的 comment ID
指令:git reflog
操作:
可以看到回到过去的指令和 ID 号
注意
7cleadd 也是 commit id 亦可以运用讲讲其复制。运行结果
查看文件内容
回到之前的文件,回到将来。
回到过去,未来指令完成。要想回到某一时间点,也是相同的操作。
小结
a.要想回到过去,必须先得到 commit id,然后通过 git reset-hard 进行回退:
b.要想回到未来,需要使用 git reflog 进历更操作查看,得到最新的 commit id,
c.在写回退指令的时候 commit id 可以不用写全,gt自动识别,但是也不能写太少,至少需要写前4位字符.
这样,结合前面的两种指令就可以在版本的记录里面来回穿梭。
不是必须用尽量不用。