git提交了敏感信息如何回滚

本文最后更新于1 分钟前,文中所描述的信息可能已发生改变。
git回滚

当git提交了错误代码,如果提交的代码量较少,可以将本地代码与之前版本进行diff,让后覆盖掉之前提交的内容。 可是如果代码量比较大,或者提交了敏感信息,如何回滚呢?

首先git commit命令为add 将本目录下所有文件加入到提交队列git add . git commit -m '提交说明' commit 提交到本地仓库执行commit后,还没执行push时,想要撤销这次的commit,该怎么办?

解决方案:

使用命令:

git reset --soft HEAD^ 用于撤销最近的一次提交,但保留提交所做的更改。这个命令将当前分支的 HEAD 指针移动到前一个提交,并将更改保留在工作区和暂存区中。 这样就成功撤销了commit内容,如果想要连着add也撤销的话,–soft改为–hard(删除工作空间的改动代码)。

注意 如果已经push到了远程仓库。这种方式也可以撤销掉已经push的内容,就是在执行了上面的命令后 再执行git push --force强制推送改变到远程仓库。会覆盖掉远程仓库的历史记录,慎用。

命令详解:

HEAD^表示上一个版本,即上一次的commit,也可以写成 HEAD1。如果进行了两次的 commit,想要都撤回,可以使用 HEAD2

  • --soft 不删除工作空间的改动代码,撤销 commit,但不撤销 git add file"。
  • --hard 删除工作空间的改动代码,撤销 commit 且撤销 git add

另外,如果 commit 注释写错了,首先要修改注释。有其他方法也能实现, 例如: git commit --amend。这时会进入 vim 编辑器,修改完成所需的注释后保存即可

docker中运行codeserver实现云编程
springboot全局异常捕获