idea删除git历史提交记录

前言:此文章是我在实际工作中有效解决问题的方法,做记录的同时也供大家参考!

一、 首先,通过idea的终端或系统的cmd控制台,进入到你的项目文件根目录,idea终端默认就是项目根目录。

二、确保你当前处于要删除提交记录的分支上,可以在idea直接进行切换。

拓展:还可以通过在终端输入命令`git branch`来查看所有的分支,然后使用命令`git checkout 分支名`来切换到目标分支。

三、使用`git log`命令查看当前分支的提交记录,确认你要删除的提交记录的哈希值。

此时从远程仓库看是这样的:

四、下面我们要把第二条提交记录删除掉,这里建议转移到文件资源管理器进行git命令操作:

我们得到这个窗口:

五、执行命令`git rebase -i 要删除记录的前一个记录的哈希值`,假如我要删除第二条,我这里需要填写的是第三条的哈希值:

六、 执行上一步后,会打开一个文本编辑器,显示的是我们需要删除的第二条提交记录,将文本上方的`pick`改为`drop`:

这里默认为我打开的是VSCode,可以直接进行编辑修改,然后通过Ctrl+S键进行保存。

你打开的可能是类似vim编辑器那种,这里介绍几个命令。
编辑模式:按 i 键或者 Insert 键,进入编辑模式修改文本。按Esc键退出编辑模式。
保存后退出:先退出编辑模式,然后按 Shift +;键,左下方显示一个冒号后,输入wq,然后按Enter回车即可。
不保存退出:先退出编辑模式,然后按 Shift +;键,左下方显示一个冒号后,输入 q 或者 q!强制退出,然后按Enter回车即可。

七、保存并关闭编辑器,Git会自动重新应用修改后的提交记录,这将删除你指定的提交记录。

八、最后,使用`git push -f`命令将修改后的分支提交到远程仓库。


此时再看,会发现第二条已经没有了,我刚刚演示过程中不小心把第一条也删除了,所以在这里看到的是一二两条都没有了。所以希望大家也仔细一点。值得注意的是,强制推送也可能会导致其他人的分支丢失,所以请谨慎使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56589.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ECMAScript与JavaScript的区别:深入解析与代码示例

目录 引言 ECMAScript与JavaScript的定义 ECMAScript JavaScript ECMAScript与JavaScript的关系 区别详解 定义上的区别 功能上的区别 实现上的区别 代码示例 ECMAScript 6 (ES6) 特性示例 箭头函数 模板字面量 JavaScript 特有的扩展 在Web开发中的应用 ECMAS…

【数据结构与算法】之栈 vs 队列

栈和队列是计算机科学中最基础也是最常用的两种线性数据结构,它们提供了一种组织和管理数据的方式。它们的主要区别在于元素的添加和删除顺序。理解它们的特点、差异以及底层实现对于选择合适的结构解决特定问题至关重要。本文将更详细地比较栈和队列,并…

Java多线程详解①(全程干货!!!)

这里是Themberfue 今天,我们将正式进入多线程章节的讲解,希望我的讲解能够让你理解😎 进程 在进入多线程的讲解中,我们先引入进程的概念及其解释 操作系统都是大家耳熟能详的名词,常见的操作系统主要有:Li…

opencv - py_ml - py_knn k-最近邻算法

文章目录 1.理解 k-最近邻算法目标理论OpenCV 中的 kNN其他资源 2.使用 kNN 对手写数据进行 OCR目标手写数字的 OCR英文字母的 OCR其他资源 1.理解 k-最近邻算法 目标 在本章中,我们将理解 k-最近邻算法 (kNN) 的概念。 理论 kNN 是监督学习中最简单的分类算法之…

从0到1学习node.js(path模块以及HTTP协议)

文章目录 一、path模块二、HTTP协议1、常见状态码分类2、IP地址3、端口 一、path模块 // 引入path模块 const path require(path)// 拼接地址 const resolveData path.resolve(__dirname, ./index) console.log(__dirname, __dirname) console.log(resolveData, resolveData…

【js逆向专题】12.RPC技术

目录 一. websocket1. 什么是websocket2. websocket的原理3. websocket实现方式1. 客户端2.服务端3. 实际案例1. 案例目标2. 解析思路 二. RPC1. RPC 简介2.Sekiro-RPC1. 使用方法1. 执行方式2.客户端环境3.使用参数说明 2. 测试使用1. 前端代码2. SK API3.python调用代码 三.项…

C++,STL 042(24.10.21)

内容 一道练习题。 (涉及list,sort) 题目(大致) 将Person自定义类型进行排序(Person中属性有姓名、年龄、身高),按照年龄进行升序,如果年龄相同则按照身高进行降序。 …

openpnp - 解决“底部相机高级校正成功后, 开机归零时,吸嘴自动校验失败的问题“

文章目录 openpnp - 解决"底部相机高级校正成功后, 开机归零时,吸嘴自动校验失败的问题"概述笔记问题现象1问题现象2原因分析现在底部相机和吸嘴的位置偏差记录修正底部相机位置现在再看看NT1在底部相机中的位置开机归零,看看是否能通过所有校…

【分布式微服务云原生】《Redis 分布式锁的挑战与解决方案及 RedLock 的强大魅力》

《Redis 分布式锁的挑战与解决方案及 RedLock 的强大魅力》 摘要: 本文深入探讨了使用 Redis 做分布式锁时可能遇到的各种问题,并详细阐述了相应的解决方案。同时,深入剖析了 RedLock 作为分布式锁的原因及原理,包括其多节点部署…

HarmonyOS鸿蒙- 一行代码自动换行技巧

DevEco Studio 编辑器设置 一行代码自动换行显示。 一、代码自动换行设置方式路径:File > Editor > General 如图: 二、找到标题:Soft Wraps 勾选《Soft-wrap these files:》,然后在后面添加*.ets 然后保存即可。添加后&#xff0c…

【TIMM库】是一个专门为PyTorch用户设计的图像模型库 python库

TIMM库 1、引言:遇见TIMM2、初识TIMM:安装与基本结构3、实战案例一:图像分类4、实战案例二:迁移学习5、实战案例三:模型可视化6、结语:TIMM的无限可能 1、引言:遇见TIMM 大家好,我是…

LangSplat和3D language fields简略介绍

LangSplat: 3D Language Gaussian Splatting 相关技术拆分解释: 3dgs:伟大无需多言SAM:The Segment Anything Model,是图像分割领域的foundational model,已经用在很多视觉任务上(如图像修复、物体追踪、图…

支持国密算法的数字证书-国密SSL证书详解

在互联网中,数字证书作为标志通讯各方身份信息的数字认证而存在,常见的数字证书大都采用国际算法,比如RSA算法、ECC算法、SHA2算法等。随着我国加强网络安全技术自主可控的大趋势,也出现了支持国密算法的数字证书-国密SSL证书。那…

OpenCV高级图形用户界面(21)暂停程序执行并等待用户按键输入函数waitKey()的使用

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 等待按键 该函数 waitKey 在 delay≤0 时无限等待按键事件,或者在 delay 为正数时等待 delay 毫秒。由于操作系统在切换线程时有最小…

一文详解视频参数——FFmpeg -i选项下的视频参数解析

随着多媒体内容在网络上的日益普及,对视频文件的处理需求也变得越来越重要。FFmpeg 是一款强大的跨平台音视频编解码库及工具集,能够帮助开发者实现对音频、视频文件的转码、剪辑、合并等多种功能。本文将重点探讨如何利用 ffmpeg -i xxx.mp4 来获取视频文件的基本信息,并对…

前端工程启动工具

一些思考 在公司项目中,需要启一个新的前端工程(一个基于Webpack的React工程)。因为同一个项目中有其他的前端工程,我们最开始想的是参考另外一个工程的配置重启一个新的工程,但是又因为原来的工程用的库版本都比较老…

软件设计师:软件工程

文章目录 一、开发模型(1)瀑布模型(需求明确)(2)增量模型(快速构建)(3)演化模型(迭代模型)(3.1)原型模型&…

自学C语言——函数(全)

接上一篇:自学C语言——数组(二) 1.函数的概念 C语言中:函数子程序 C语言中的函数就是一个完成某项特定的任务的一小段代码。 2.库函数 标准库和头文件 C语言标准中规定了C语言的语法规则,C语言不提供库函数&am…

Ubuntu 22.04上安装Miniconda

在Ubuntu 22.04上安装Miniconda,可以按照以下步骤进行: 步骤1:更新系统 首先,更新您的系统软件包: sudo apt update sudo apt upgrade -y步骤2:下载Miniconda安装脚本 访问Miniconda的官方网站或使用以下…

IAR全面支持旗芯微车规级MCU,打造智能安全的未来汽车

中国上海,2024年10月18日 — 在全球汽车电子快速发展的今天,IAR与苏州旗芯微半导体有限公司(以下简称“旗芯微”)联合宣布了一项激动人心的合作——IAR Embedded Workbench for Arm 9.60.2版本现已全面支持旗芯微车规级MCU&#x…