如何在 Visual Studio 中执行双 git init 命令后恢复文件

How to restore files after double git init command in Visual Studio

我决定使用 Visual Studio 创建 git 存储库,并使用 VS 工具添加版本控制。我从来没有这样做过,所以我想我应该自己制作存储库,而 VS 只会制作 .git 并添加一些 gitignore 行。

我的项目包含一些保存起来很危险的文件 public 但是当 git 在 VS 中初始化时,第一次提交包括我的文件。

  1. 然后我将这个文件添加到git忽略并完成了一次提交。
  2. 然后我意识到如果我发布更改,这个文件仍然可以访问。因此,我尝试删除 VS 中的第一个提交,但我不明白该怎么做(尽管我这样做了,但我点击了几次还原按钮但没有任何反应)。
  3. 然后我打开命令行并输入git init。我看到了 Reinitialized existing Git repository in D:/Projects/Programing projects/C C++/QT/SushiWokAdmin/MY_GREAT_PROJECT_I_WAS_MAKING_IT_FOR SEVERAL_WEEKS/.git/.
  4. 然后我回到VS,看到那个项目已经关闭了。
  5. 然后我去了我的项目文件夹,我看到我所有的文件都不见了, 除了那些,那是在git忽略文件。

我没有进行任何提交或推送。如何恢复我的文件?

P.S: 我还有 .vs 文件夹,里面有一些文件,这可以帮助我恢复我的项目吗?

我真的需要那些文件。所以只有 R-Studio 帮助了我。我只是搜索已删除的文件并恢复我能恢复的:(

运行 git-init 没有删除您的文件。

git-init documentation:

Running git init in an existing repository is safe. It will not overwrite things that are already there. The primary reason for rerunning git init is to pick up newly added templates.

您的文件可能仍在存储库中。

你可以试试:

  1. 从索引恢复:git restore :/
  2. 重置当前提交的文件:git reset --hard
  3. 检查其他分支和历史记录(git log --graph --all --oneline)
  4. 跟随 Pro Git 的 Data Recovery 来从已删除的提交和对象数据库中恢复数据。