GitHub 提交被删除
Posted
技术标签:
【中文标题】GitHub 提交被删除【英文标题】:GitHub commits got deleted 【发布时间】:2015-07-18 22:10:05 【问题描述】:
我正在处理一个 GitHub 项目的本地副本。更改了几个文件后,我尝试提交并收到消息This is not a github repository
,所以我做了git init
、git add .
并提交(添加远程源后),并做了git push origin master -f
。
现在所有的提交都消失了,除了我的。
有没有办法恢复这些提交,因为它们真的很重要?我试过git reset 890dbfa4a5479cf849f2e2b525b9609a26e19573
,但我收到了Could not parse object '890dbfa4a5479cf849f2e2b525b9609a26e19573'
的消息。
【问题讨论】:
能不能恢复到这个:github.com/MixtapeDistrict/server/tree/… 来自:github.com/MixtapeDistrict/server 【参考方案1】:您确实强制推送,这将覆盖分支中的整个提交历史记录。
你犯了两个错误:
-
您似乎没有克隆存储库,而是复制并调用了 git init。
您可以创建一个单独的分支并与 master 合并,但您没有这样做。
您可以尝试以下方法:
-
尝试从 github 克隆存储库并查看它是否包含您尝试重置的这些对象。如果是,那就没关系。
否则,请联系 github 支持以完全恢复您的文件夹。如果未清理未使用的对象,那么这可能会对您有所帮助。原始文件夹可能有以前的对象。
您可以参考以下链接以获得更多帮助:
-
Undoing a 'git push'
How to recover from a git push -force?
【讨论】:
好吧,我可以在这里访问存储库,里面的提交:github.com/MixtapeDistrict/server/tree/… 是否可以恢复到那个状态? 可以联系github。他们可能会帮助你。 查看编辑和此链接:christoph.ruegg.name/blog/… 谢谢,我最终使用了另一个成员的本地副本(包含所有提交)并对其执行 git push origin master -f 。以上是关于GitHub 提交被删除的主要内容,如果未能解决你的问题,请参考以下文章