【发布时间】:2022-11-23 12:51:05
【问题描述】:
我今天创建了一个 git bare repo,并添加了一些点文件和配置。最重要的是我的 qtile 配置,因为我在它上面做了很多工作。
添加所有内容后,我推动一切都很好。
我这样做是因为我打算发行跳跃,然后我将磁盘清理干净(所有其他重要文件都保存在云中)。
安装了新的发行版(EndeavourOS,在我使用 Manjaro 之前)并创建了一个新的 git bare repo。
这是出了问题。它不允许我在添加远程存储库后提取文件,所以我想,让我现在就添加并推送我在这台 PC 中的所有内容(因为它是全新安装,所以不多),即使它覆盖了一些东西,我只会检查 git 并复制差异。
好吧,我强行推送了我添加的东西,因为我之前没有进行过拉动,所以该提交覆盖了我之前所做的之前的提交,其中我添加了对我来说很重要的所有配置。
我去了 github 中的 repo,所有文件都丢失了,只有一个提交显示(我强制推送的那个)。
我知道我做错了几件事让自己陷入这种情况,但我想知道是否有任何方法可以恢复我以前在我的回购中拥有的那些文件并被覆盖。
【问题讨论】:
-
你用过
git reset --hard和git push --force? -
您可以使用
git reflog查看硬重置之前的旧提交。