00:00
改写提交的历史记录。在B使用的时候指定I选项,可以改写、替换、删除或合并提交。现在看第一个图。假如这是我们现在的一个历史记录。我们通过B加上杠I参数。可以修改啊,某一次的一个内容,然后还可以将类似的。提交的一个历史的记录给进行合并。主要使用的场合是在push之前重新输入正确的提交注解,或者清除汇合内容含义相同的提交,或者添加最近提交时漏掉的档案。下面进行实例的一个演示,接着我们还是先准备一下啊,一个本地的get仓库啊在这里。打开。Get终端。然后执行这个创建一个MK5的一个。
01:02
G的本地数据库。整体回撤。好,这里多了一个五,接着呢,我们复制一下五改成六,五用来演示修改,六用来演示合并。复制一下。接下来我们看一看。合并提交。现在查看一下,当前是在这个五上面,它的一个历史记录是这四个,也就是这样的一个历史记录。想要汇合过去的一个提交使用I。接下来演示把commit和put这两次提到的历史进行合并,也就是把最近这两个提交的历史记录。
02:02
啊,进行合并。使用get杠。杠二,然后后面跟上我们要合并的分支啊,使用hard,从hard合并到它的前两个分支。杠2D一个波浪号,两个波浪号。看下历史记录啊。当前hard是在这个位置啊,最新的一个提交这里我们使用啊杠,然后加上hard两次拨号,它就会将。当前这个和后面的这个进行一个合并,接着回车。回车的时候呢,进入到了一个这样的编辑页面啊,这是我们。嗯,这个的一个提交啊,这个的一个提交,这是我们最后一次的一个提交。现在我们把第二行的这个pick改成什么呢?改成squash。
03:05
这是vim编辑器啊,要编辑它的时候先输入I啊。爱见。之后就进入到了这个插入模式。光标回退,退到这里,把这四个字母删除,接上,写上我们的这个模式,这个模式。Squash。好,这有几个模式的一个介绍啊,比如说像这个模式是使用提交,并且啊进行和上一提交进行一个一个合并。接下来改完之后呢,我们当前还是处于插入模式,按一下ESC键,可以由插入模式退出到命令行模式。啊,在命令模式。输入冒号。WQ啊,注意下面的光标,在你输入冒号的时候,光标会跑到下面,接着输入WQ回撤可以退出,并保存这次的一个编辑。
04:01
好,接下来会又会进入到一个VM的编辑页面,这个是让我们去,呃,添加一个说明,因为现在是。进行了一次啊,新的一个合并,因为你把他们两个就是进行合并了嘛,生成了一次新的一个提交,所以这里你要写一个提交,你的提交的说明。我们就先不做更改,直接。输入冒号,然后光标跑到这里,WQ保存退出,好,这时候就完成了这两个。提交的记录的一个合并,现在看一下我们的历史记录。只有三个了,第一个,第二个,而第三个和第四个进行了一个合并。变成了这个提交。通过检查五里面的这个内容,我们会发现内容也没有少,对吧,但是我们的提交少了一次。如图,这个就是我们当前啊,这个历史记录的一个状态。
05:03
把这两个进行了一个合并。啊,当然这里是改了这个合并的啊,说明我们刚才在编辑器里面没有做说明的修改。接下来使用。这个l monkey6去做一下修改的一个演示啊,这里少打了一个。呃,终端我们也退掉。在这个六里面。打开这个终端。好,接下在甚至在60个目录,我们来演示一下,使用杠I去修改要演示的什么呢?修改。就是这里的啊一个内容。先检查一下啊,检查一下我们这个六这里面的内容。我们在第三次啊,添加commit的讲解的这个地方。我们填写的内容是他对不对,现在我们对它的内容做一个修改。
06:00
啊。修改使用。Getb-at。Heart还是使用这个命令啊,然后使用两个拨拉号。找到这次要修改的一个内容,呃,我们先不执行啊,先看一下当前的一个历史记录。是还是四个对吧,就是这样的一条线啊,接下来。使用getb杠、I hard2个波浪号。回车之后还是会进入到一个编辑器啊,将会看到这个从hard到这个HARD2个波浪号的一个提交的信息。不错。接下来啊,我们要修改的是啊,这一次考米特的这次的一个提交,所以我们把第一行的啊,这个考米特的提交这里take改成edit,可以看它的一个说明使用提交,但是啊。
07:08
不停止这个东西。我们去改一下VM编辑器。按I键,在命令行模式下按I键进入编辑模式。然后删除这个,改成E。接着按ESC由插入模式退出到命令模式。在命令模式下。输入冒号光标到这里,接着输入WQ保存。好,这时候他告诉我们啊。你现在应该啊,先进行一个就是杠的一个提交,我们之前学过,我们知道commit-A可以修改某一次的一个提交,而不生成一个新的提交,对吧。接着我们来。嗯,把这个内容去修改一下啊,因为现在我们已经处于这个B状态了,现在我们可以去,呃,修改这个内容,修改完内容之后我们可以。
08:06
再进行一个这个it的一个提交,就是修改某一次的提交,但是不去。啊,增加新的一个基调来,我们把它。把这个内容改成。加个一一啊,多加几个这么的一个内容保存。接着。添加到。索引区,然后commit使用杠杠进行提交啊。嗯,这个时候我们可以修改一下它的这个说明,比如把它修改成。嗯,增加了一些内容吧,按I进入编辑模式,把光标移到最后。杠修改,接着由插入模式按ESC退入到命令模式,再输入冒号。
09:06
命令模式下输入冒号,一定要注意你的这个键盘要英文的才行。WQ保存退出。好,这个时候呃,已经commit了,但是尽管我们已经commit了。但是这个它还没有结束,所以。要执行B杠杠,Continue,完成这次的一个内容的一个修改。好,但是你在的时候它可能会冲突,因为我们在。之前的这个状态下去修改了这个文件,而我们原来的这个历史记录里面啊,原来的内容里面也对这个同样的文件做了一个修改,我们这时候要手动解决冲突。看一下这个冲突是吧,确实有冲突,接着来手动解决一下这个冲突。
10:01
好把这个删掉,这个删掉。这里删掉,可以看到我们之前的修改是在这里的啊,保存。好解决完冲突之后呢。重新提交就可以了,先把这个文件加入到索引区。再继续使用K。杠杠,Continue就完成了这次的啊。呃,新的一个说明啊,我们可以改,也可以不做更改,我们把这里光标移到最后。按二键进入插模式。输入一些内容啊,输入E1,接着ESC退出插入模式,输入冒号WQ保存。此时啊,就已经完成了这次的一个修改,那我们现在看一下get的一个历史记录。对吧。
11:00
我们的这次修改就到了这里。好,我们的这个内容。也是修改后的内容啊,如何验证我们这次确实是进行了修改的内容啊的一个添加呢。那我们可以回退到这次。提交使用get reset杠杠heart。回退到这次提交啊,接下来。看一下文件的一个内容,可以发现。确实是完成了对这一次提交历史记录的一个修改,对吧,一开始的这次提交历史记录就有他嘛,现在只有他当然。我们如果想要回复到啊,最新的一个历史的提交记录的话,还是可以使用get reset杠杠heart加上这个。这个or hard存储,它实际上是呃,保存了最新的一个历史提交的一个记录啊。
12:00
只是执行完之后。看一下这个log,它就会处在这个最新的。一个历史的一个记录上面。这个就是使用啊杠二选项,它不仅可以改写某一次的提交的一个内容和说明,而且还可以合并,就是功能类似的。啊,提交。
我来说两句