在 Pycharm 'Undo Commit'错误后恢复本地文件



我觉得这是一个非常独特和愚蠢的场景。

我在一个使用共享Github存储库的团队中工作,只是为了我们的SQL代码用于BAU任务和类似的方式来保存/共享我们的工作。我一直在使用Pycharm社区版本将这些文件推送到github存储库中。有一段时间,由于一个问题(现在已经解决),我无法更新主分支,这意味着我在预提交阶段有几个文件位于本地pycharm文件夹中。

我去更新我的分支后提交,但推会失败,似乎一个大文件已经放在错误的文件夹。我试图从本地文件夹中删除文件,创建另一个提交和推送,但同样的问题出现了。所以我通过Pycharm取消了提交,认为这样可以删除大文件,然后只推送一次提交,而不包含文件。

在一个愚蠢的时刻,我选择更新Pycharm,因为我的技术支持团队也告诉我,因为版本是2021而不是2022。我删除了2021年的版本,但保留了缓存。现在我发现我的所有文件都在"预"提交阶段从我的本地删除了,Pycharm没有任何提交历史记录或更改历史记录,我今天早上尝试了失败的推送。

有谁知道我怎样才能恢复我的文件?

我试图找到提交历史或以任何方式找到缓存或其他版本的文件

你认为你不再需要我的帮助了,但也许其他人需要。

在我的理解中(因为我无法从文档中收集到很多信息),撤销提交会将您重置为分离的头部。

因此,为了让您恢复本地文件,请执行以下操作:

  • git reflog在这里搜索最近一次好的提交(您可以找到它)通过提交消息)并复制它的哈希值,例如1cf0e38
  • git checkout your hashGit会通知你,你加入了分离头
  • git ls-files并检查commit
  • 中呈现的所有文件
  • git switch -c new branch name以便创建新的分支保留commit和最后的
  • git push—set-upstream origin新分支名称

在此之后,您可以将新的分支合并到所需的分支中并继续工作。希望能有所帮助。

最新更新