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:这个命令会丢弃所有当前的工作目录和暂存区的更改。如果你有未保存的工作,这些更改将会丢失。
相关推荐
MUTA️10 小时前
git传输超过100MB的文件
git
ALex_zry10 小时前
Git大型仓库推送失败问题完整解决方案
大数据·git·elasticsearch
二进制coder11 小时前
Git Fork 开发全流程教程
大数据·git·elasticsearch
程序员馨馨11 小时前
不扰远程仓库,本地双版本:master 留 A 稿,分支藏 B 稿
git
无限进步_12 小时前
C语言动态内存的二维抽象:用malloc实现灵活的多维数组
c语言·开发语言·数据结构·git·算法·github·visual studio
用户478612972069212 小时前
Git:如何排查非线性历史中被隐秘覆盖的修改(完整实战笔记)
git
weixin_3776348416 小时前
【Git使用】PyCharm中的Git使用
ide·git·pycharm
爱吃泡芙的小白白17 小时前
vscode、anaconda、git、python配置安装(自用)
ide·git·vscode·python·anaconda·学习记录
ALex_zry1 天前
Git大型仓库推送失败问题解决方案:大文件传输优化指南
git
草莓熊Lotso1 天前
Git 分支管理:从基础操作到协作流程(本地篇)
大数据·服务器·开发语言·c++·人工智能·git·sql