执行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编辑器,修改完成你要的注释后保存即可。

转载
链接:https://www.jianshu.com/p/a9f327da3562

git commit 后 尚未push到远程,撤销commit的更多相关文章

  1. 第一次怎么把本地git仓库的内容push到远程仓库?

    使用git push origin <分支名> -f 这种方式可以用本地仓库的内容覆盖远程仓库.

  2. git 本地新建分支Push到远程

    1. 本地新建分支,并切换到新的分支 git branch local_branch; git checkout local_branch; 2.第一条的命令也可以简单的一条命令来替代 git che ...

  3. clone分支,修改文件本地commit后, push回原分支失败,处理方法

    从远程clone 一个仓库到本地仓库A后,由于有多个分支,经常需要切换,不同分支区别比较大,切换一下,需要重编译,于是又在本地clone了改动较大的一个分支F到仓库B: 在B仓库改动后,提交到A仓库的 ...

  4. git push到远程仓库

    (此处我以码云为例) 常用命令: 添加远程仓库:git remote add origin 仓库地址 (origin只是一个名字,对远程仓库的一个名字,习惯上用origin) 从仓库拉取内容:git ...

  5. git 撤销push到远程仓库的无用commit

    一 回退代码 git reset <版本号> --soft // 软回退 - 所有的commit修改都被撤销了,且修改的代码统一撤回到暂存区 git reset <版本号> - ...

  6. git commit 后,没有push ,怎么撤销

    如果是撤销到commit 之前,本地修改也放弃,可以 使用git  reset --hard , 但是想保留本地修改,也想撤销commit 可以使用 git reset  --mixed  HEAD^ ...

  7. 转!!git如何撤销上一次commit(或已push)

    原博文地址 : https://www.cnblogs.com/lyy-2016/p/6509707.html git如何撤销上一次commit操作 1.第一种情况:还没有push,只是在本地comm ...

  8. Git撤回已经推送(push)至远程仓库提交(commit)的版本

    背景 所以,经常会遇到已经提交远程仓库,但是又不是我想要的版本,要撤下来. 回退版本一般使用git reset,又分为: # 不删除工作空间改动代码,撤销commit,不撤销git add . git ...

  9. git 添加远程仓库后无法push

    push的时候提示fatal: refusing to merge unrelated histories   假如我们的源是origin,分支是master,那么我们 需要这样写git pull o ...

随机推荐

  1. 前端学习(22)~css问题讲解

    你是如何理解 HTML 语义化的? 语义化:指对文本内容的结构化(内容语义化),选择合乎语义的标签(代码语义化). 举例:段落用 p,边栏用 aside,主要内容用 main 标签. 好处: 便于开发 ...

  2. Docker 搭建开源 CMDB平台 之 “OpsManage”

    说明:  我一次build 完 所以images 包 有1G多   可分层build   bash 环境一层   应用程序及启动脚本(shell.sh) 一层 步骤:           1     ...

  3. ROS大型工程学习(一) 必须了解的基本文件

    一.Cmake文件 阅读工程,首先点开CMakeLists 文件,会定义一些库和可执行文件.首先看可执行文件,rosrun的就是这个节点navigator add_executable(navigat ...

  4. DP(动态规划求含有冻结期的买卖股票)-05-动态规划-买卖股票

    题目描述 Alice这次决定去股市里当一波韭菜. 她希望你设计一个算法,在满足以下3个约束条件下,计算出最大利润. 1.  你可以多次买卖一支股票,但是对于每支股票,你不能同时参与多笔交易(你必须在再 ...

  5. 【问题管理】-- Tomcat8部署项目加载静态资源html页面编码错误

    1.问题背景及解决方式 最近在回顾Tomcat部署Web项目,自己简单地从Tomcat的下载安装及配置server.xml文件入手,学习Tomcat的项目部署,在自己使用IDEA创建了一个简单地web ...

  6. 四十五、SAP中Message的管理

    一.事务代码SE91 二.输入相关名字,点击创建 三.输入内容 四.定义成本地对象 五.在消息中添加一条短文本 六.我们代码如下 七.执行

  7. 吴裕雄--天生自然C++语言学习笔记:C++ 基本的输入输出

    C++ 的 I/O 发生在流中,流是字节序列.如果字节流是从设备(如键盘.磁盘驱动器.网络连接等)流向内存,这叫做输入操作.如果字节流是从内存流向设备(如显示屏.打印机.磁盘驱动器.网络连接等),这叫 ...

  8. hdu 1950 Bridging signals 求最长子序列 ( 二分模板 )

    Bridging signals Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  9. SOA--基于银行系统实例分析

    阅读以下关于 Web 系统设计的叙述 [说明] 某银行拟将以分行为主体的银行信息系统,全面整合为由总行统一管理维护的银行信息系统,实现统一的用户账户管理.转账汇款.自助缴费.理财投资.贷款管理.网上支 ...

  10. jQuery琐碎

    函数(以click事件为例)在jsp页面和js中的不同写法 onclick="getInfo(this);" function getInfo(obj){ var $this=$( ...