场景1: 已经commit + message + push的前提下
git add .
git commit -m 'fix test'
git push
实现步骤
1.使用git rebase -i HEAD~3
查看最近几次的commit信息 (3 代表最近的几次,根据自己需求修改)
git rebase -i HEAD~3
输入 git rebase -i HEAD~3
我们看到三条信息
pick e6c5ade fix test git steps
pick cc969bc fix test dev
pick a7a95f2 fix test
左边第一列表示命令(command),中间一列表示commit id,最右边一列是我们之前提交的message。三条信息: 按最近时间排序从下到上排序
我们这里需要把 test
这个message 修改成 我是新的test
把pick
修改成edit
,先指定修改某一条commit id
vim 的命令修改: 先 点击 键盘 i
键,然后左下角出现 -- INSERT --
的标识,即可修改文本内容
按 esc
可以关闭 -- INSERT --
的标识,然后输入:wq
即可退出vim的编辑。
2. git commit --amend
新的commit信息如下
退出vim,即可。
git rebase --continue
- 推送代码 (-f 代表强制意思)
场景2: 已经commit message 但是没有push的前提下
git add .
git commit -m 'fix test'
步骤和场景1的方法一样
git rebase -i HEAD~3
回车
把 pick f1be619 fix 一张图片
修改成 edit f1be619 fix 一张图片
保存退出:
git commit --amend
回车
把 fix 一张图片
修改成 fix 我上传图片了
保存退出:
git rebase --continue
回车
git lg
查看也没有修改成功
git push -f
push到远程分支