这节课我们教几个使用的小技巧,然后下一讲就讲解 Git 最为耀眼的特性——分支。

第一个小技巧就是修改最后一次提交

实际开发中,你可能会遇到下边这两种情况:

Situation One:版本刚一提交(commit)到仓库,突然想起漏掉两个文件还没有添加(add)。就好比你是老司机,说开车就开车,到了半路发现还有俩乘客没上来……

Situation Two:版本刚一提交(commit)到仓库,突然想起版本说明写得不够全面,无法彰显你本次修改的重大意义……

辣么遇到上边这两种情况,你都避免不了要头疼。但记住一点,只要是在本地发生的事情,大多数情况下我们都是有办法恢复滴。

有同学猛地虎躯一震,似乎想起来什么 

没错,在 Git实用教程 4.0:回到过去 中我们讲到可以用 reset 命令回到过去。

但这有点像我们打游戏打不过 BOSS,退回最近存档重练的赶脚……对于希望“一次通关”的完美主义者来说多少有点不爽!那么有没有一步到位的方法呢?

答案是肯定的,可以执行带 --amend 选项的 commit 命令,Git 会“更正”最近的一次提交。

案例还是前边的 MyProject2(别问我为嘛不整点 niubi 轰轰的栗子,因为那样你就会忙着去看代码而忘了学 Git 了!就像你们去车展,难道是去看车的吗?)

回顾一下,上次经我们这么一折腾,仓库里总共提交了两个版本:

Git实用教程 6.0:修改最后一次提交

然后为了演示 diff 命令,我们将 README.md 文件改了又改,最后三棵树是酱紫:

Git实用教程 6.0:修改最后一次提交

这时,我们希望将暂存区域的 README.md 文件进行提交,但又没必要为此增加一个新的版本(你说是吧)。

怎么办呢?执行 git commit --amend 命令修改最后一次提交即可。

执行命令后会立刻跳转到下边界面:

Git实用教程 6.0:修改最后一次提交

大家看到了最上面黄色文字就是最后一次提交的说明,按下键盘上的 I,就会变成:

Git实用教程 6.0:修改最后一次提交

在走下角多了一个 INSERT,这时就可以插入文字修改说明了。修改了之后,按下 Esc,然后 按下快捷键 Shift + z + z(其实就是连续两个大写 Z)来退出。

Git实用教程 6.0:修改最后一次提交

其实进入的界面是让你编辑提交说明而已,如果你 commit 的时候没有 -m 选项,都会进入这么一个窗口让你填写说明。

So,如果需要修改提交说明,那么可以执行 git commit --amend -m "新的提交说明" 命令。

如果不需要修改,请按下快捷键 Shift + z + z(其实就是连续两个大写 Z)来退出,或者可以按下冒号(:),然后输入 q! 退出。那么会 Git 会保留旧的提交说明。

Git实用教程 6.0:修改最后一次提交

此时,Git 仓库中仍然只有两个版本:

Git实用教程 6.0:修改最后一次提交

暂存区域的内容也提交上去了:

Git实用教程 6.0:修改最后一次提交

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-07-06
  • 2022-12-23
  • 2021-08-12
  • 2022-12-23
  • 2022-12-23
  • 2021-12-23
猜你喜欢
  • 2021-11-14
  • 2022-12-23
  • 2021-11-19
  • 2021-06-03
  • 2022-12-23
  • 2021-11-29
  • 2022-12-23
相关资源
相似解决方案