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

项目第一次git commit后如何撤销

问题描述:

# 1. 新建gitcode目录,然后在目录下
git init# 2. 用idea打开目录后,新建.gitignore文件后
git add .git commit -m "init project"git log# 3. 就出现如下图情况

在这里插入图片描述
目的:向撤销该次代码提交

# 仅撤销 git commit 命令
git reset --soft HEAD^# 撤销 git commit 命令和撤销 git add
git reset --hard HEAD^

在这里插入图片描述
在这里插入图片描述

$ git reset HEAD^
fatal: ambiguous argument 'HEAD^': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

结果:并没有达到预期效果撤回git commit提交

# 仅撤销 git commit 命令
git update-ref -d HEAD

在这里插入图片描述

注意:上面是一个项目第一次提交后撤回碰到的情况。

如果不是第一次提交,是第二次、第三次…就可以使用下面命令

# 撤销 git commit 提交
git reset --soft HEAD^

在这里插入图片描述
HEAD^的意思是上一个版本,也可以写成HEAD~1;

如果2次commit,都想撤回,可以使用HEAD~2;

# 不删除工作空间改动代码,撤销commit,并且撤销git add . 操作
git reset --mixed HEAD^或git reset HEAD^# 不删除工作空间改动代码,撤销commit,不撤销git add .
git reset --soft HEAD^# 删除工作空间改动代码,撤销commit,撤销git add .
git reset --hard HEAD^# 如果commit注释写错了,只是想改一下注释,只需要git commit --amend,此时会进入默认vim编辑器,修改注释完毕后保存就好
git commit --amend

如果已经推到远程仓库了,要撤回,则本地操作commit提交的撤回,然后执行

git push origin 分支名 --force

相关文章:

  • JS进阶——垃圾回收机制以及算法
  • 【数学建模】【2024年】【第40届】【MCM/ICM】【B题 搜寻潜水器】【解题思路】
  • Rust 学习笔记 - 变量声明与使用
  • 用C语言列出Linux或Unix上的网络适配器
  • 5.9 BCC工具之nodejs_http_server.py简介
  • [前端开发] 常见的 HTML CSS JavaScript 事件
  • aiofiles:解锁异步文件操作的神器
  • Unity类银河恶魔城学习记录7-6 P72 Bouncy sword源代码
  • LLM之LangChain(七)| 使用LangChain,LangSmith实现Prompt工程ToT
  • 树与二叉树---数据结构
  • bat脚本 创建计划任务 一分钟设置ntp同步周期为60s
  • Gin框架: 快速搭建起一个Web应用环境及处理不同类型的响应
  • wordpress外贸成品网站模板
  • 二叉树相关OJ题
  • Python编程中的异常处理
  • 0基础学习移动端适配
  • CODING 缺陷管理功能正式开始公测
  • Docker入门(二) - Dockerfile
  • Druid 在有赞的实践
  • git 常用命令
  • java2019面试题北京
  • PHP的类修饰符与访问修饰符
  • Web设计流程优化:网页效果图设计新思路
  • WePY 在小程序性能调优上做出的探究
  • 诡异!React stopPropagation失灵
  • 计算机在识别图像时“看到”了什么?
  • 如何实现 font-size 的响应式
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • ​2020 年大前端技术趋势解读
  • #android不同版本废弃api,新api。
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • (04)odoo视图操作
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (二开)Flink 修改源码拓展 SQL 语法
  • (附源码)python旅游推荐系统 毕业设计 250623
  • (附源码)spring boot儿童教育管理系统 毕业设计 281442
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (一一四)第九章编程练习
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • ./和../以及/和~之间的区别
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .NET Core 中的路径问题
  • .Net FrameWork总结
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .NET3.5下用Lambda简化跨线程访问窗体控件,避免繁复的delegate,Invoke(转)
  • .NET的数据绑定
  • .NET中的Exception处理(C#)
  • /bin/bash^M: bad interpreter: No such file or directory
  • [ vulhub漏洞复现篇 ] ECShop 2.x / 3.x SQL注入/远程执行代码漏洞 xianzhi-2017-02-82239600
  • [3D基础]理解计算机3D图形学中的坐标系变换
  • [Android Studio] 开发Java 程序
  • [C#]无法获取源 https://api.nuge t.org/v3-index存储签名信息解决方法
  • [ChromeApp]指南!让你的谷歌浏览器好用十倍!