由于同时管理多个项目,多种开发语言同步开发,开了好多个Git窗口。今天在提交python某项目的时候不小心在vue的项目中执行了git add、git commit 操作,在push的时候悬崖勒马,于是故事开始了:我先回滚了commit,接着想把add也回滚一下,结果直接回滚到了上次提交的那个节点上,哦豁,新写的代码...它...没了,于是,掏出超级棒棒糖,奇思妙想之后有了接下来的补救操作:
在代码开发编辑器中选择自己修改的项目文件/文件夹->右键
选择“Local History” --> “Show History”
页面展示代码更新记录
选择需要回退的时间序列
右键-->revert
这样代码就恢复到自己想要的操作节点上了。
但如果是之前新建的文件或者目录,被自己的神操作弄没了,也很简单,在编辑器左侧对应的文件夹下创建自己丢失的那个目录/文件,也一样重复上述操作,一样可以找到过往的操作日志(前提是需要知道自己创建和修改的那个文件的名字)
自此,回忆一下下面的知识吧~
git commit后,如何进行撤销commit操作
在我们使用git作为版本控制工具进行代码管理之后,经常性的会碰到一个问题:git commit后,如何撤销commit,下面详细讲一下。
git add newFiles
git commit -m '新增xx页面'
执行commit后,还没执行push时,想要撤销这次的commit,该怎么办?
解决方案:
我们可以使用命令:git reset --soft HEAD^ 这样就成功撤销了commit。
使用git reset --hard HEAD^ 这样连add也撤销了。
*注:reset 命令只能回滚最新的提交,无法满足保留最后一次提交只回滚之前的某次提交。
命令解释:
HEAD^ 表示上一个版本,即上一次的commit,几个^代表几次提交,如果回滚两次就是HEAD^^。 也可以写成HEAD~1,如果进行两次的commit,想要都撤回,可以使用HEAD~2。
--soft 不删除工作空间的改动代码 ,撤销commit,不撤销add
--hard 删除工作空间的改动代码,撤销commit且撤销add
如果commit后面的注释写错了,先别急着撤销,可以运行git commit --amend 进入vim编辑模式,修改完保存即可
参考链接:https://blog.csdn.net/logan_LG/article/details/81531796
标签:HEAD,git,--,WebStorm,撤销,add,commit From: https://www.cnblogs.com/T8888/p/17293017.html