Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 文件完全从我的存储库中消失,硬重置没有帮助,我能做些什么吗?_Git_Github - Fatal编程技术网

Git 文件完全从我的存储库中消失,硬重置没有帮助,我能做些什么吗?

Git 文件完全从我的存储库中消失,硬重置没有帮助,我能做些什么吗?,git,github,Git,Github,我有一个GitHub私有回购协议,我通过Visual Studio for Mac 2019将我的更改推送到该协议 背景故事 我直接在GitHub上添加了一个自述文件,几周后我编辑了本地副本,并试图推动我的更改。我不能这样做,因为它说我有远程更改,但本地没有,这很好 然后,我把我的变化藏在VS for Mac中,并试图拉出来,这似乎是可行的 然后我尝试使用我的藏品,我不断地得到随机错误。我想我可能必须为Mac更新VS,我也这么做了 然后在更新之后,我无法在本地repo中打开任何文件,因为它一直说

我有一个GitHub私有回购协议,我通过Visual Studio for Mac 2019将我的更改推送到该协议

背景故事

我直接在GitHub上添加了一个自述文件,几周后我编辑了本地副本,并试图推动我的更改。我不能这样做,因为它说我有远程更改,但本地没有,这很好

然后,我把我的变化藏在VS for Mac中,并试图拉出来,这似乎是可行的

然后我尝试使用我的藏品,我不断地得到随机错误。我想我可能必须为Mac更新VS,我也这么做了

然后在更新之后,我无法在本地repo中打开任何文件,因为它一直说
BeginBatchUpdate调用了两次,而没有调用EndBatchUpdate

我重新启动了VS for Mac,然后我尝试构建我的项目,但我注意到缺少一个文件

我试图签出早期提交,但它似乎从未存在过-文件也不在早期提交中。。。我试着
git reset--hard
,运气不好,我试着检查我在
git reflog
中是否做了什么奇怪的事情,除了提交、重置和签出之外,里面什么都没有,所以我不知道文件怎么会像这样消失

问题


是否有机会恢复随机删除的文件?

在git中,版本控制的主要节点是提交。首先,我会尝试。如果该列表是非空的,那么签出这些提交将使您能够恢复该文件

如果提交列表为空,则该文件没有提交,这意味着该文件从未实际进行过版本控制

您隐藏自述文件的事实让我觉得它可能没有提交,因为如果它被提交,那么当您执行git pull时,您就会进行合并,最坏的情况是解决一些合并冲突

因此,我认为您无法使用git恢复您的文件,对于未来,我建议您应该始终执行提交&合并来处理版本差异,而不是隐藏更改

可能存在恢复该文件的可能性,例如:


然而,自述文件的丢失(除非很长)可能是一个可以通过重写来解决的问题。重要的是要从这个问题中吸取教训,并确保您不会在将来失去工作而带来更可怕的后果。

自述文件已提交*“我远程更改了本地没有的内容”*我将检查自述文件的提交情况。谢谢,我从未保存自述文件,因为它只在远程可用。我把本地的零钱藏起来了。消失的文件不是隐藏的更改的一部分。这是近一年前创建的回购协议中的首批文件之一。这就是为什么我不知道为什么文件完全消失了…我检查了那些提交,他们也没有文件。好像这个文件从未存在过…@iSpain17我明白了,所以自述文件只能远程使用?我以为是在你的本地区。我认为文件消失了,因为你做了git重置。这否定了每一个更改,所以如果您有一个合并冲突,然后执行git reset——很难,那么文件和更改就会消失。再次运行git pull。我拉了很多次,什么也没发生。我开始接受它,因为它是来自MVVM项目的视图文件。我有viewmodel,所以重建它不会那么困难。