上一篇我们学到怎麽使用Vim,还有修改commit message,这次要做的事情呢,就是要来合并跟拆解commit massenge。
Well接下来的起手势还是一样啦,先来个:
git log --oneline
这个时候就可以看到我们的历时的commit纪录,不过总觉得有点多又有点杂。
那就来开个互动模式吧!
git rebase -i 507908b
一样来到刚刚那个地方,不过,这是想要把一些Vim的编辑重点稍微看一下:
我们可以看到其实指令有很多种,像上一篇我们就是用reword来做编辑,而这次呢,我们会使用到的是:
squash
well,来看看会变怎麽样:
好的,这边做的变更,其实是有一些意义的,因为我们觉得某一些纪录是多余的,所以我们想把它合并起来,
而我们必须知道一件事情:
互动模式中,纪录的由上而下就是最旧的纪录到最新的纪录,这个跟我们用:
git log --oneline
这个指令叫出来的结果并不相同,必须要注意一下。
好的,那我们下squash这个指令的主要意义其实也是要让我们合并纪录,那大概知道之後,下了squash的那行纪录就会跟前一行进行合并了,我们等等可以注意一下哪些会消失!
然後下完指令,跟上一篇一样会进行全部的commit message的修改,我这边就按照顺序改成:
大致上是完成了,这个时候再把常用的指令给它下下去:
git log --oneline
这个时候就会看到一些合并的资料啦!
上面我们看到如何使用合并commit,我们这次要另外做的就是把一个commit拆成多个,这个要怎麽做呢?
我们一样就是下最熟悉的指令:
git log --oneline
看一下现在的状态,然後也是下rebase:
git rebase -i 507908b
然後一样会跳出Vim编辑器
这个时候我们要做的就是另外一个指令啦:
edit
这个时候会突然停下来,嗯?
这个时候,我们要把一个commit拆成两个,也就是说,之前好像有学过怎麽拆掉commit:
git reset HEAD^
这样就会让我们的状态回到原先没有合并的样子,老样子下一个指令:
git status
还有下面的状态,由於刚刚拆出来的commit,我们的档案也一起被拆出来了在工作目录,可以看到状态是Untracked:
所以接下来要做的事情就是要把它加回去罗!
git add
git commit -m "....."
用上面的指令把弃置在工作目录的红色档案加回去吧
然後,最後也要记得,由於现在的状态是在rebase,所以还是要继续把rebase执行完成:
git rebase --continue
这样,全部就结束了!
铁人赛
<<: Day29-浅谈 React Concurrent Mode & 相关功能(Fiber、Suspense、useTransition、useDeferredValue)
不知不觉来到了第28天,最後我们来做个复习吧。 Coroutine 的目的 用来解决非同步程序执行的...
DBABootcamp 在 SQL Server, 死结的发生是因为有两个或多个工作(process...
前言 今天来创建具体的 Featured View。 实作 创建一个 FeaturedView fi...
今天试着写了滚动视差的网站 滚动视差主要是靠东西不同的滚动速度来做到前後落差的感觉 先看成品 先做最...
前言 今天先介绍一下JavaScript的一些背景, 再说一下JavaScript的变数与资料类型。...