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:这个命令会丢弃所有当前的工作目录和暂存区的更改。如果你有未保存的工作,这些更改将会丢失。
相关推荐
qq_452396236 小时前
第六篇:《GitLab CI 进阶:多环境部署与环境变量管理》
git·ci/cd·gitlab
有想法的py工程师7 小时前
GPG 密钥迁移指南:多私钥备份、批量导入与自动信任
git·github
浮江雾9 小时前
Flutter第五节------Flutter开发环境配置与项目创建指南
开发语言·前端·git·学习·flutter·入门·函数
aramae14 小时前
C++11:现代C++的里程碑
c语言·开发语言·c++·windows·git·后端
BerryS3N16 小时前
VS Code Git 工作树:解锁多分支并行开发新体验
大数据·git·elasticsearch
工具派18 小时前
从 git commit 到交付 PDF:我的一条在线工具流实录
git·elasticsearch·pdf
咋吃都不胖lyh1 天前
提交(Commit)到本地的 Git 仓库,然后才能推送(Push)到远程的 Git 仓库
git
__zRainy__2 天前
VS Code 自动同步如何重写 Git 历史:一次重复合并冲突的排查与恢复
git
IT码农-爱吃辣条2 天前
AI Codeview 安装与使用教程
git·ai
司南-70492 天前
怎么使用git打包tag,并推送到远程仓库
git