git提交代码失败,还原提交后,本地代码丢失,解决办法

bash 复制代码
(venv) (base) sunyuhua@sunyuhua-HKF-WXX:~/PycharmProjects/Linly-Talker/src$ git status
位于分支 master
要提交的变更:
  (使用 "git restore --staged <文件>..." 以取消暂存)
        新文件:   ../.gitignore
        新文件:   ../.idea/.gitignore

(venv) (base) sunyuhua@sunyuhua-HKF-WXX:~/PycharmProjects/Linly-Talker/src$ git log
commit 172e639b45f150211f2ee09ed694179025ccdb5b (HEAD -> master)
Author: sunyuhua <sunyuhua@shgbit.com>
Date:   Thu Feb 1 14:09:47 2024 +0800

    Revert "init project"
    
    This reverts commit 91118fa4f77ebfe9037dc1236bb926f3950398bd.

commit 91118fa4f77ebfe9037dc1236bb926f3950398bd
Author: sunyuhua <sunyuhua@shbgit.com>
Date:   Thu Feb 1 14:04:12 2024 +0800

    init project

想恢复到"init project"提交之前的状态,尤其是如果你想找回在执行 git revertgit reset 之后丢失的文件,你可以按照以下步骤尝试:

1. 检查当前状态

首先,确认当前的 git status 来看看是否还有其他文件未被跟踪或已暂存但未提交。

2. 恢复到"init project"提交

由于你已经知道"init project"的提交哈希(91118fa4f77ebfe9037dc1236bb926f3950398bd),你可以尝试直接检出到那个状态。但是要注意,这将会改变工作目录中的文件,可能会覆盖任何未提交的更改。如果你确定没有需要保留的更改,可以执行:

bash 复制代码
git reset --hard 91118fa4f77ebfe9037dc1236bb926f3950398bd

3. 检查文件

执行完上述命令后,你的工作目录应该会恢复到"init project"提交时的状态。使用 ls 或其他文件浏览命令来确认你的文件是否都已恢复。

注意:

  • 备份:在执行任何可能会丢失数据的 Git 操作之前,总是好的做法先备份当前的工作目录。
  • 小心使用 git reset --hard:这个命令会丢弃所有当前的工作目录和暂存区的更改。如果你有未保存的工作,这些更改将会丢失。
相关推荐
Jammingpro2 小时前
【Git版本控制】Git初识、安装、仓库初始化与仓库配置(含git init、git config与配置无法取消问题)
java·git·elasticsearch
shark8 小时前
无需放弃变更、关闭占用程序!用暂存区和 git底层命令实现 Git 变更备份
git·shell·自动化运维
_poplar_9 小时前
15 【C++11 新特性】统一的列表初始化和变量类型推导
开发语言·数据结构·c++·git·算法
北城笑笑9 小时前
Git 10 ,使用 SSH 提升 Git 操作速度实践指南( Git 拉取推送响应慢 )
前端·git·ssh
蓁蓁啊14 小时前
GIT使用SSH 多账户配置
运维·git·ssh
相与还19 小时前
IDEA和GIT实现cherry pick拣选部分变更到新分支
git·elasticsearch·intellij-idea
刘志辉1 天前
git指令
git
2501_916766541 天前
【Git学习】初识git:简单介绍及安装流程
git·学习
孤独的追光者1 天前
Git 完整流程:从暂存到推送
git
平平无奇。。。1 天前
版本控制器之Git理论与实战
linux·git·gitee·github