1、当前提交修改
直接使用git commit --amend 进行修改即可
2、历史提交修改
这里需要用到rebase
首先,git rebase -i HEAD~3,表示修改当前版本的倒数第三个提交,输入这条命令后会出来如下信息:
pick ******* cmmit1
pick ******* cmmit2
pick ******* cmmit3
按i输入,然后将需要修改的commit前的pick改为edit或者e,esc退出编辑,输入:wq回车保存并退出
此时使用git log查看提交记录,就会发现变成了要修改commit的那条记录了
接着,git commit --amend,修改commit信息
最后,git rebase --continue就可以啦
这里需要熟悉git rebase的一些指令
p 使用改提交,默认操作
r 拿到提交,修改提交的commit
e 修改这个提交的内容。使用这个命令的时候,rebase 操作会停在操作提交处,等待修改完毕,使用git add .
和 git commit --amend
修改提交,git rebase --continue
继续 rebase 进程。
s 将使用这个命令的提交与它的父提交融合为一个提交。
f 和 squash 命令的作用一样,不同的是,squash 命令会把融合的提交的提交信息都保存融合后的提交信息中,但是 fixup 会放弃被融合的提交。
d 删除提交