Git 如何撤销最新一次Commit

在使用git时,经常会遇到在未push之前,发现提交的代码或者comment有问题。如果在Agile 敏捷开发的公司,往往你的git与Jira是相关联的,这时一般要求你的comment 里的Story Id要与Jira 一致,如果写错了,导致你的commit会push不到远程服务器上。这只是我提到的一种情况,国内的公司往往这种模式还很少。我们就是在任何commit有问题想回撤一下这个commit。

现在我做准备提交一个文件到github上,文件名叫ReadMe.md

git add ReadMe.md
git commit -m "this is a wrong commit"

这个commit 的comment是错误的,将它修改为“this is a right commit”

git commit --amend

这时会在git bash的命令行里,出现vi 编辑窗口,然后进行修改保存就可以了,因为使用的是vi,请掌握vi的编辑保存操作。

amend窗口

以上是在没有代码要撤销,只有comment里的信息要修改时,所使用的命令

如果你的上一次提交,还有代码改错了,要撤回重新修改,那可以使用下面的命令

git reset HEAD~
<< edit files as necessary >>                            
git add ... 
git commit -c ORIG_HEAD 

这个命令会回滚你的全部commit,你只需重新编辑你的文件,然后重新git add, commit

ORIG_HEAD的意思是和“--amend”是一个意思,会打开一个编辑器,去编辑你的comment,修改完保存即可 如果你的comment不需要修改,只是文件的更改,那只用 -c参数即可。

转载于:https://my.oschina.net/u/1273644/blog/782468

华为OD机试真题 新系统2026-04-01 Python&JS 实现【空间占用计算】 员工A的磁盘空间经常被耗尽,他需要找到占用空间最大的目录或文件,然后决定如何清理文件释放空间。给定某一目录,请编写程序帮助他统计该目录内一级子目录和文件的占用空间,并返回目标目录一级子项(文件或子目录)中占用空间最大的项。 阅读详情

相关推荐

C++网络编程 - Boost::asio异步网络编程 - 01- boost库源码编译安装

知识的学习在于点滴记录,坚持不懈;知识的学习要有深度和广度,不能只流于表面,坐井观天;知识要善于总结,不仅能够理解,更知道如何表达! 目录 如果需要录屏资料,请私信邮箱shitou3000@qq.com获取。 ...

大秦坑王的专栏 1万+

【git】git 删除最近或者任意一次提交commit

git 删除最近或者任意一次提交commit

qq_35902025的博客 3292

stata:stata软件教程(人大十八讲)(1) 第一章 stata入门

第一章 stata入门1.1 安装1.2 启用和退出1.3 打开和查看数据1.4 寻求帮助与网络资源1.5 命令示例1.6 几个环境设置1.7 复习与练习1.8 附录 注:教材为:Stata 统计分析教程 stata软件教程(人大十八讲) 中国人民大学出版社 陈传波 1.1 安装 1.2 启用和退出 1.3 打开和查看数据 1.4 寻求帮助与网络资源 1.5 命令示例 1.6 几个环境设置 1.7 复习与练习 1.8 附录 ...

qq_47805483的博客 1万+

【Latex学习】注释(comment)和取消注释的快捷键

环境:TexStudio 注释快捷键:Ctrl + T 取消注释快捷键:Ctrl + U

锥栗的博客 7145

FFmpeg视频缩放终极指南:从基础命令到保持宽高比的5种实战技巧

本文是FFmpeg视频缩放的终极指南,详细讲解了从基础命令到保持宽高比的5种实战技巧。针对不同平台(如抖音、B站、Instagram)的分辨率要求,提供了具体的参数模板和批量处理脚本,帮助内容创作者高效、精准地调整视频大小,避免画面变形或黑边问题,实现多平台适配。

juice的博客 461

防止通达信公式被盗?手把手教你用DLL加密+互联网验证(含易语言后台管理)

本文详细介绍了如何通过DLL加密与互联网验证技术保护通达信公式安全。从DLL加密实现、设备绑定到易语言后台管理,提供了一套完整的防护方案,有效防止公式被盗用。重点讲解了互联网验证登录和绑定设备等核心技术,帮助量化交易者守护核心资产。

weixin_29323551的博客 501

git撤销某一次commit提交

如果您想彻底删除 Git 中的某次提交的内容,可以使用git rebase命令并将该提交删除。以下是删除 Git 提交内容的步骤:找到要删除的提交的哈希值。可以使用git log命令查看提交历史记录,然后找到要删除的提交的哈希值。在终端中使用命令并指定要删除的提交的哈希值。例如,要删除哈希值为abc123的提交,您可以运行以下命令:1在这里,abc123~1表示要删除的提交的前一个提交。pickdropabc123保存更改并关闭编辑器。

edunlun的博客 1万+

别再乱按F8了!Win10系统修复的正确姿势:用管理员CMD运行sfc /scannow

本文详细介绍了Windows 10系统修复的正确方法,重点推荐使用管理员CMD运行`sfc /scannow`命令。相比传统的F8键和重装系统,这一方法更高效且安全,能解决大多数系统文件损坏问题。文章还提供了管理员CMD的启动方式、sfc命令的完整参数解析以及实战故障排除流程图,帮助用户快速恢复系统健康。

weixin_29218963的博客 463

【git】撤回某次commit

git撤回某次commit

小菜张的博客 2万+

从0玩转Mamba神经网络:理论+实战的保姆级教程

Mamba神经网络是一种基于状态空间模型(SSM)的高效序列处理架构,相比Transformer具有更快的推理速度和更低的内存消耗。本文提供从理论到实践的完整指南,详细讲解Mamba的工作原理、与Transformer的差异,并给出基于PyTorch的文本分类实战示例。教程包含环境配置、数据处理、模型搭建、训练评估全流程,展示了Mamba在IMDb情感分析任务中的应用。文章还探讨了Mamba的性能优势及进阶方向,为开发者提供了探索这一新兴技术的实用指南。通过阅读本文,读者可以快速掌握Mamba的核心概念并上

FJN110的博客 316

泛微系统流程表单获取节点操作者

泛微系统流程表单获取节点操作者 select typename 流程类型, workflowname 流程名称, nodename 节点名称, (case when nodetype=0 then '创建' when nodetype=1 then '审批' when nodetype=2 then '提交' when nodetype=3 then '归档' else '' end) as 节点类型, groupname 节点操作组, (case when type=1 then '部门+安

烧硬盘 4616

git撤销commit

git撤销操作

Natalie_Lv的博客 5577

【CASS精品教程】032:CASS11台阶画法案例大全

一、普通无边台阶 二、普通有边台阶 三、普通圆弧无边台阶 四、U型台阶 五、曲线U型台阶 六、L型台阶

智慧空间实验室 7466

Git中的commit操作 commit 回退

通过以上方法,你可以轻松地在Git中撤销commit操作。在实际开发过程中,熟练掌握这些技巧,可以帮助你应对各种突发情况,提高工作效率。

qq_56463139的博客 592

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

IDEA 提交git 之后撤回操作

idea git commit之后,想撤销commit

qq_37158147的博客 3万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

IDEA撤销已经commit的代码和记录

IDEA撤销已经commit的代码和记录

jxiao_linbei的博客 1155

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

IDEA git 代码已经commit,但未 push推送,如何撤销提交缓存区代码

HEAD~~ 和 HEAD^^ 都是指次次新版本,也就是倒数第三个版本,以此类推,数字同理。此时按照图中选择回退的方式,以及回退到哪个版本,点击“Reset”即可,在"Version Control" 中 “log” 里,最新一次提交的记录消失即回退成功。在版本二的基础上,增加了b.txt文件,并添加内容“版本三”(并git add),然后commit;增加的b.txt文件则会变成绿色的状态(git add的状态),表示此文件被git版本追踪控制了。版本二以及版本三的内容全部消失,只剩下版本一的内容。

weixin_50885665的博客 3118

git系列之revert回滚

1.Git使用revert回滚已提交的commit 在git使用中如果提交错误的代码至远程服务器,可以使用gitrevert命令回滚单次commit并且不影响其他commit。 回滚最新一次的提交记录:gitrevertHEAD 回滚前一次的提交记录:gitrevertHEAD^ 对历史上的commit回滚:gitrevert 回滚历史commit很容易产生文件冲突,需要做好冲突处理。 使用SourceTree进行commitrevert 在准备revert的commit上右

格物致知 4797

工作时的一些git技巧和操作错误后怎么办

在实际开发过程中有些文件不应该频繁提交,比如本地的配置文件,或者日志文件,或者一些本地自己测试的一些类,即使有.gitignore文件有时候还是会出现失误,那么如果一不小心提交了怎么办呢?

阿杰 425

初学Git命令

【代码】Git命令。

m0_67551949的博客 33

撤销git最新提交

撤销git最新提交

qq_41587397的博客 494

git commit后,如何撤销commit

作者:旅行者xy 链接:https://www.jianshu.com/p/a9f327da3562 来源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 修改了本地的代码,然后使用: git add file git commit -m '修改原因' 执行commit后,还没执行push时,想要撤销这次的commit,该怎么办? 解决方案: 使用命令: git reset --soft HEAD^ 这样就成功撤销了commit,如果想要连着add也撤销的话,–soft改.

c46550的博客 18万+

idea撤销git commit

执行commit后,还没执行push时,想要撤销这次的commit,该怎么办? 一、idea操作如下: 找到VCS--Git--Reset HEAD,不同的idea版本位置可能不一样,我的是IntelliJ IDEA 2018.2.2 在To Commit中的HEAD后面加上^,点击Reset即可撤回最近一次的尚未push的commit 解释: Reset Type 有三种: Mixed(默认方式),保留本地源码,回退 commit 和 index 信息,最常用的方式 Soft ..

心猿意码的博客 4万+

git commit之后,撤销commit提交,却保留代码

简介: 已经git commit一次提交,但是想撤销commit这次提交,且保留代码不变 文章目录本博文的简述or解决问题?同步博文:问题背景:解决方法:关于参数:顺便说一下,如果commit注释写错了,只是想改一下注释,只需要:开心分享: 本博文的简述or解决问题? ​ 详情: 见简介 同步博文: 本篇的csdn/github.io同步博文: 问题背景: 写完代码后,我们一般这...

1万+

git如何撤销上一次commit(或已push)

git如何撤销上一次commit操作 Git有三大区(工作区、暂存区、版本库)以及几个状态(untracked、unstaged、uncommited),Git 保存的不是文件的变化或者差异,而是一系列不同时刻的文件快照。 1.第一种情况:还没有push,只是在本地commit git reset --soft|--mixed|--hard <commit_id> git push develop develop --force (本地分支和远程分支都是 develop) 这里的<co

jike11231的博客 2万+

idea git commit之后,想撤销commit

问题:idea提代码后,想撤销commit,怎么办捏??(T_T) To Cimmit:里面填写 HEAD~1 点击Reset即可撤销上次commit的内容; 下面会详细介绍Reset Type:Mixed To Commit : HEAD~1 具体是什么意思!! 简单介绍一下git常用命令(idea提交就不用介绍了吧,工作中经常用到,如果有需要可以在评论下面说,...

sunshinezx8023的博客 5万+
上一篇: JVM 类的加载(四)- 父类子类加载关系
下一篇: 继承与实现线程接口的区别
chenmin4331
博客等级 码龄11年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值