【问题标题】:Rollback to uncommited changes after hard reset a Git Repository硬重置 Git 存储库后回滚到未提交的更改
【发布时间】:2014-04-23 16:19:36
【问题描述】:

错误地,我硬重置了我的 git 存储库。通过这样做,我所做的所有更改都消失了。现在,我想将 Git 回滚到所有未提交的更改。请帮我解决一下这个。

【问题讨论】:

  • Git 中从未有未提交的更改,您无法“回滚”它们,因此您的问题实际上是如何恢复已删除的文件。见superuser.com/questions/671773/…
  • @sashoalm 我正在使用亚马逊 ec2,你知道我怎样才能恢复这些文件...
  • 您的更改是暂存但未提交,还是也未暂存?

标签: git github git-svn git-branch


【解决方案1】:

“未提交的更改”表示 本地 存储库(即使您在 amazon ec2 上有远程存储库)

这意味着您必须已将 (git add) 文件添加到本地克隆,然后执行 git reset --hard

如果是这种情况,您仍然可以找到那些带有git fsck 的添加文件,如Recover files that were added to the index but then removed by a git reset 中所述:

  • 首先,对当前存储库进行完整备份
  • 然后试试git fsck --full --unreachable --no-reflog

【讨论】:

  • @janos 请看截图,当我使用上述命令时。 i.imgur.com/oz5ItHX.png
  • @RaviKumar 你的照片看起来不错。正如我链接的答案 (stackoverflow.com/a/10783950/6309) 中提到的,您需要使用图片中列出的各种 SHA1 执行git cat-file -p <object hash>,以便查看您是否识别出您拥有的文件的 contentgit reset 之后丢失。
猜你喜欢
  • 2010-12-09
  • 2021-09-30
  • 1970-01-01
  • 2021-05-17
  • 2011-05-21
  • 1970-01-01
  • 2018-10-01
  • 2011-12-30
  • 2020-08-18
相关资源
最近更新 更多