月落迷離 2024-08-26 23:34 采纳率: 0%
浏览 5

git版本回退如何撤回?

问题遇到的现象和发生背景

git 版本回退撤回的问题,有个项目在提交代码时在目录使用了

git add . 

上传了一个无关文件。打算撤回掉在暂存区的文件,不知道命令就百度了一下,然后输入了

git reset --hard

然后发现本地的代码被回退到上一个版本了,如何撤销 git reset --hard 这个命令的执行?

操作环境、软件版本等信息

win11
git version 2.45.2.windows.1

尝试过的解决方法

首先使用git status查看了当前的状态,发现当前状态正常。
尝试过使用 git loggit reflog 查看日志,但是发现距离上一次提交commit的日期是2个月前了

>git log
commit 60085a12f6dd557034b8df50b54726925007d4fd (HEAD -> separation)
Author: jelly_ceoi <7443398+jelly_ceoi@user.noreply.gitee.com>
Date:   Tue Jun 25 00:23:22 2024 +0800

    提交

commit e387d9abf14b0c5a2e60d02cf8fa7729e8247cb3
Author: jelly_ceoi <7443398+jelly_ceoi@user.noreply.gitee.com>
Date:   Tue Jun 25 00:22:12 2024 +0800

    客户端和管理端分开,更新双端页面路由,更新平台名称,操作流程到充值管理

commit 490b4bf58dae454ccef7039679bc22fdb55e6491
Author: jelly <2660394869@qq.com>
Date:   Mon Apr 29 02:03:24 2024 +0800

    管理端路由匹配已完成,角色管理、系统功能点的code未改,待解决 机构管理和企业端路由匹配

commit 1ccd8ee5961e5c9a2fbbf68c40458b1097de8fd5
Author: jelly <2660394869@qq.com>
Date:   Wed Feb 7 15:00:51 2024 +0800

    更新菜单管理1,待解决页面路由匹配
git reflog
60085a12 (HEAD -> separation) HEAD@{0}: reset: moving to HEAD
60085a12 (HEAD -> separation) HEAD@{1}: commit: 提交
e387d9ab HEAD@{2}: commit: 客户端和管理端分开,更新双端页面路由,更新平台名称,操作流程到充值管理
490b4bf5 HEAD@{3}: commit: 管理端路由匹配已完成,角色管理、系统功能点的code未改,待解决 机构管理和企业端路由匹配
1ccd8ee5 HEAD@{4}: commit: 更新菜单管理1,待解决页面路由匹配
6b23b5ca HEAD@{5}: commit: 更新解决管理端 付款批次服务商新增充值,偶然会出现输入不了银行账号
21b5faca HEAD@{6}: commit: 更新管理端 菜单管理增删改查
12bce9fb HEAD@{7}: commit: 更新管理端-菜单管理1的新增同级/下级菜单功能,编辑菜单/删除菜单功能待处理
8c1edf8f HEAD@{8}: commit: 更新客户端菜单管理list
3d656677 HEAD@{9}: reset: moving to HEAD
3d656677 HEAD@{10}: commit: 提交到新分支_separation
af926cfb (origin/master, master) HEAD@{11}: checkout: moving from master to separation
af926cfb (origin/master, master) HEAD@{12}: pull: Fast-forward
e408f74c HEAD@{13}: commit: update src\components\Tinymce\index.vue
a365f29e HEAD@{14}: pull: Fast-forward
我想要达到的结果

只想把本地的文件恢复到输入git reset --hard前的状态,毕竟2个月的代码量 orz <哭>

  • 写回答

3条回答 默认 最新

  • 吃不了席 2024-08-26 23:35
    关注

    以下回复参考:皆我百晓生券券喵儿等免费微信小程序作答:

    要撤销git reset --hard命令,你需要找到你执行这个命令之前的提交哈希值。从你提供的git reflog输出来看,最近的提交是在2个月前,所以你需要找到那个提交的哈希值。

    假设那个提交的哈希值是abcdef1234567890(这只是一个示例哈希值,你需要替换为实际的哈希值),你可以使用以下命令来恢复你的代码:

    git checkout abcdef1234567890
    

    这将把你的代码恢复到那个提交的状态。如果你不确定哪个提交是正确的,你可以使用git log命令查看提交历史,找到正确的提交并复制其哈希值。

    评论

报告相同问题?

问题事件

  • 修改了问题 8月26日
  • 创建了问题 8月26日

悬赏问题

  • ¥15 35114 SVAC视频验签的问题
  • ¥15 impedancepy
  • ¥15 在虚拟机环境下完成以下,要求截图!
  • ¥15 求往届大挑得奖作品(ppt…)
  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见