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`命令将修改后的分支提交到远程仓库。

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

相关推荐
晓理紫6 小时前
使用git lfs向huggingface提交较大的数据或者权重
git
wrx繁星点点7 小时前
享元模式:高效管理共享对象的设计模式
java·开发语言·spring·设计模式·maven·intellij-idea·享元模式
我不是程序猿儿8 小时前
【GIT】sourceTree的“当前分支“,“合并分支“与“检出分支的区别
git
尘浮生14 小时前
Java项目实战II基于Spring Boot的问卷调查系统的设计与实现(开发文档+数据库+源码)
java·开发语言·数据库·spring boot·后端·maven·intellij-idea
_OLi_15 小时前
IDEA中新建与切换Git分支
java·spring boot·git
心安成长17 小时前
IntelliJ IDEA快速接入LLMs大模型API
java·ide·intellij-idea
PyAIGCMaster18 小时前
ubuntu下安装 git 及部署cosyvoice(1)
git
维__kxs766719 小时前
小程序 + AI 自动直播:一部手机开启抖音挂载小程序流量主变现之旅
git·eclipse
37_oC1 天前
Idea自动生成mysql表DML语句
mysql·intellij-idea·dml
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ1 天前
GIT GUI和 GIT bash区别
开发语言·git·bash