00:01
取消过去的提交。使用reward命令可以取消指定的提交内容,后面会学到的B-I或者reset也可以删除提交,但是这两个不能删除已经发布的提交。什么叫已经发布的提交呢?就是已经发布到了这个。呃,远程的一个数据库对吧?如果我们使用这两个命令删除了本地的提交的历史记录,这时候本地的历史提交记录就会比远程数据库的历史提交记录要少很多啊,并不能包含远程数据库所有的历史提交记录,这时候你是push不上去的。啊,这时候我们可以使用re创建要否定的一个提交,而re这个命令呢,它是在你要否定的这个提交的基础上去生成了一个新的提交,此时我们本地的历史记录可以看到有ABC和一个新的一个提交,而假定我们线上的啊远程。数据库的历史记录是ABC对吧?我们的本地还是会包含远程数据库的所有的一个历史记录,这个时候是可以复习上去的啊,主要的一个使用场合就是安全的取消过去发布的提交,比如已经推送到远程数据库的历史记录,如果使用reset,你相当于删除了一部分的历史记录,此时本地的历史记录会比远程数据库的历史记录要少,会拒绝你的推送,但是。
01:25
如果使用re就可以解决这个问题。re是要。取消的历史记录的基础上生成一个新的历史记录,此时本地的历史记录还是包含了远程的历史记录,我们就可以直接推送到远程数据库了,明白了吧?啊,简单的说就是啊,B和reset,它是把这个历史记录给删除了啊,删除了之后,那你历史记录就会少了很多,你如果线上的远程的这个,呃,历史记录比较多的话。你本地你要想要去推推送不让你推送啊,但是re呢,它是啊,在你要否定的这个提交的一个基础上去增加了一次提交,它还是要比这个线上的啊,我们远程的呃,数据库的历史记录要多的,所以我们可以推送上去。
02:10
接着我们以一个例子来看一下啊,这个例子呢,就是也是创建了一个名为阿二的一个空的本地数据库啊。接着进行了四次的一个提交,啊,进行了四次的提交,你可以一次执行这个命令。我们讲课就直接复制这个。写到一起的这个快速的命令。复制一下打开啊,在我们的工作目录打开get的一个终端。把命令粘贴上。啊,没有复制上,再复制一下。没车。来看一下历史记录啊。
03:00
其实就是创建了这么,呃,四次提交的一个。本地的一个数据库啊。然后我们来演示什么例子呢?使用reward命令来取消啊to的一个讲解,这次的一个提交。现在我们的历史记录是这样的。和这个图是一致的啊。那现在我们要演示什么意思,就是把添加铺的讲解这一次的一个提交给取消掉。啊,我们用get命令。就是检查了一下历史记录,发现和我们的这些都是一致的啊,接着打开。这个文档去确认一下它的这个内容。找到我们的目录。进入到二里面啊,二里面我们现在是在二这个里面。检查一下这个文档的一个内容,有这四个内容对吧,好。记好这四个内容。现在。使用ret命令取消最后一次的一个提交。
04:01
执行get reward hard啊,Hard就是当前。把这个放大一些,当前指向的最新的一个提交。看到了吧,Heart就是当前指向的最新的一次提交,当然如果你不写heart,你直接写这个ID也是可以的啊。Retard。啊,这个时候会让我们嗯,进入到一个编辑器去添加一个说明,这是vim编辑器,我们如果直接退出的话,按ESC,然后按冒号,冒号的时候这里会出现一个命令,啊,输入QWQ就保存退出了。啊,这里就生成了一个提交。可以看到啊,接着看一下我们的历史的一个日志。来可以看到。呃,再放大一下。第一次提交,第二次第三次第四次,刚才我们取消的操作呢,它生成了一个新的一个提交,对不对。
05:05
这个时候去检查一下这个文档的一个内容,发现啊,之前是四条的一个内容,现在只剩三条了,说明我们成功的回退了这个版本。最后来看一下当前的一个历史记录图,就是这个样子的。有五个提交记录,最后一次的提交记录是啊,否定了这个铺的提交记录。
我来说两句