Git学习笔记-- amend 详解
前言
最近在项目合作过程中,出现了以下情景。
- 本地修复了个 Bug,经过 add、commit、push 等操作上传到了远端仓库。
- 然后发现自己的代码有点问题,然后再次进行了上述操作。
- 最后远程有两份 commit 记录。
经过同事提醒,简单修复之前写错的代码,可以不用 commit 两次。
利用 amend 就可以实现将当次的 commit 覆盖掉上一次的 commit,会更美观。
遂去学习了下 amend 的使用细则。
什么时候用?
- 本地 commit 之后,此时还没有 Push 到远端,有一点小改动需要再次 commit。
- 本地 commit 之后,此时已经 Push 到远端,有一点小改动需要再次 commit。
这两种情况,一种是已经 Push,一种是没有 Push。
其实这两都是一样的处理方法。
怎么使用?
- commit 之后,发现需要修改代码。修改本地代码,然后 add。
- 输入指令:git commit --amend --no-edit。或者 git commit --amend -m “这一次的 commit 内容”
- 之后就正常 Push 就好了。
–no-edit 的意思是,不修改之前的 commit 描述,也就是覆盖 commit 的时候,沿用上一次的 commit 描述。
如果使用的是第二种,那么当前的 commit 描述会覆盖掉上一次的 commit 描述。