我创建了一个空的私有(private)存储库,名为 “克隆仓库”。
然后我在我的机器上本地克隆了空存储库 文件夹 htdocs。
然后我拖动了一个名为“codebase”的文件夹,其中包含所有代码 克隆的空存储库“clonedRepo”。
然后我使用 Mac OS X 的 Github 应用程序提交并推送所有 将“codebase”文件夹下的代码复制到“clonedRepo”,但提交 失败是因为几个视频文件太大,这是公平的 够了。
我点击了撤消提交按钮。
但是突然间“codebase”下的所有文件都消失了。这 目录保留,但文件消失。
我在终端中尝试了此本地存储库的“git stash list”,但是 仅返回默认命令提示符。
我没有这段代码的备份,它对我来说非常重要,因为我几周以来一直在研究这个问题,但从头开始重新制作它会非常耗时且乏味。知道我怎样才能把它拿回来吗?我没有删除本地克隆的存储库或其中的任何内容。本地存储库显示其大小为 302 MB,但包含的可见内容仅值 46KB。请帮忙。
最佳答案
首先,我要感谢@bitoiu、@Fredric 和@eckes 的帮助。
基本上,当我将代码库添加到空存储库并 已提交,无法推送该提交,因为视频文件位于 代码库大于 100MB。按“撤消提交”后我 相信我丢失了所有的代码库。
但实际上发生的是它被移动到 stash 的 .git 文件夹
在存储库内。要显示存储库下的 stash 文件,请参阅此链接: http://ianlunn.co.uk/articles/quickly-showhide-hidden-files-mac-os-x-mavericks/
然后输入
git reflog
获取 HEAD 当前和过去的哈希码。然后输入
git reset --hard <hash code of the commit that introduced the files>
填充
下所有丢失的文件 存储库。有关git reset
的更多信息以及关于--hard
的使用能 可以在这里找到:Whats the difference between git reset --mixed, --soft, and --hard? .
关于git - Git 存储库中缺少文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31723679/