删除最后一次提交
git revert HEAD
git push origin 当前分支
注意:revert和reset的区别:revert是放弃指定提交的修改,但是会生成一次新的提交,需要填写提交注释,以前的历史记录都在,而reset是指将HEAD指针指到指定提交,历史记录中不会出现放弃的提交记录。
如果是使用reset的话:
git reset --hard HEAD^
git push origin 当前分支 -f(--force,该参数是强制提交,因为reset之后本地库落后于远程一个版本,因此需要强制提交)
删除历史某次提交
首先需要log查看想要删除的某次提交的commit-id
git rebase -i "commit-id"
至此已经删除了指定的commit,最后再git push origin 当前分支 -f
修改历史某次提交
同删除历史某次提交前面两个步骤进入弹出界面,将红框中改为edit之后,保存退出,当前分支会进入到REBASE-i(当前分支/REBASE-i)的状态
然后执行以下命令:
git add .
git rebase --continue
最后再git push origin 当前分支 -f
至此就已经完成历史某次提交。