当前位置: 首页 > news >正文

git commit后,如何撤销commit

修改了本地的代码,然后使用:

git add file
git commit -m ‘修改原因’

执行commit后,还没执行push时,想要撤销这次的commit,该怎么办?

解决方案:
使用命令:

git reset --soft HEAD^

这样就成功撤销了commit,如果想要连着add也撤销的话,–soft改为–hard(删除工作空间的改动代码)。

命令详解:

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

–soft
不删除工作空间的改动代码 ,撤销commit,不撤销git add file

–hard
删除工作空间的改动代码,撤销commit且撤销add

另外一点,如果commit注释写错了,先要改一下注释,有其他方法也能实现,如:

git commit --amend
这时候会进入vim编辑器,修改完成你要的注释后保存即可。

相关文章:

  • SS-Model【3】:DeepLabv2
  • 基于springboot高校社团管理系统
  • 在线教育项目【老师服务】
  • 堆的应用:堆排序及TopK问题
  • 【Android development】系列_01创建安卓应用程序
  • Keras CIFAR-10图像分类 GoogleNet 篇
  • 详解react生命周期和在父子组件中的执行顺序
  • 2022年山东省安全员C证复训题库模拟考试平台操作
  • 《算法导论》第11章-散列表 11.1-直接寻址表 11.2 散列表
  • 归并排序算法
  • DNSPod十问百果园焦岳:为什么开水果店是一门高科技生意?
  • 《nginx》三、nginx负载均衡
  • 操作系统——程序地址空间
  • JavaScript-操作表单和前端加密
  • 使用disruptor队列实现本地异步消费
  • 网络传输文件的问题
  • 《剑指offer》分解让复杂问题更简单
  • 【划重点】MySQL技术内幕:InnoDB存储引擎
  • Date型的使用
  • Java 网络编程(2):UDP 的使用
  • javascript 哈希表
  • js
  • js继承的实现方法
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • Redis学习笔记 - pipline(流水线、管道)
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • 简单数学运算程序(不定期更新)
  • 用Node EJS写一个爬虫脚本每天定时给心爱的她发一封暖心邮件
  • k8s使用glusterfs实现动态持久化存储
  • ​​​​​​​​​​​​​​Γ函数
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • #define
  • ( 用例图)定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现
  • (3)选择元素——(17)练习(Exercises)
  • (8)Linux使用C语言读取proc/stat等cpu使用数据
  • (9)STL算法之逆转旋转
  • (C语言)编写程序将一个4×4的数组进行顺时针旋转90度后输出。
  • (C语言)二分查找 超详细
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (附源码)springboot掌上博客系统 毕业设计063131
  • (附源码)ssm高校实验室 毕业设计 800008
  • (附源码)计算机毕业设计高校学生选课系统
  • (机器学习-深度学习快速入门)第三章机器学习-第二节:机器学习模型之线性回归
  • (四)Controller接口控制器详解(三)
  • (算法)N皇后问题
  • (转)四层和七层负载均衡的区别
  • (自用)learnOpenGL学习总结-高级OpenGL-抗锯齿
  • .NET 4.0中使用内存映射文件实现进程通讯
  • .Net mvc总结
  • .NET/C# 项目如何优雅地设置条件编译符号?
  • .net访问oracle数据库性能问题
  • .NET企业级应用架构设计系列之技术选型