在 VSCode 中保存文件会删除 git repo 中的所有跟踪文件

Posted

技术标签:

【中文标题】在 VSCode 中保存文件会删除 git repo 中的所有跟踪文件【英文标题】:Saving a file in VSCode deletes all the tracked files in the git repo 【发布时间】:2020-02-28 16:44:28 【问题描述】:

我在 VSCode 中打开了一个 git 存储库文件夹。在点击 cmd+s 保存我当前正在处理的文件后,此操作通常会删除存储库中的所有跟踪文件并将它们添加到已提交状态。我总是必须对 repo 进行硬重置以恢复更改,这不是最佳选择,尤其是在我更改了多个文件的情况下。

我不知道问题可能是什么。我正在使用 mac,所以我一直在寻找 iCloud 的类似问题,但我真的不知道它是否是由 iCloud、VSCode、git 或我系统中的其他任何东西引起的。

我试图通过将.nosync 文件放入目录来阻止 iCloud 同步,但这没有帮助。

有没有人遇到过类似的问题?您有什么想法吗?我应该在哪里找到更多关于它的信息?

【问题讨论】:

【参考方案1】:

我在 Apple Stack Exchange 上看到了关于此问题的 similar thread。看来,一般来说,您可能不希望将 git 存储库放在 iCloud 管理的文件夹中。我的 Documents 文件夹由 iCloud 管理,但我一直只是将我的存储库保存在 ~/Projects 中,它不在 iCloud 上,而且我没有遇到任何问题。

您可以对此进行测试的一种方法是将一个 repo 克隆到 ~/Projects 中(假设它不是由 iCloud 管理的)并查看您是否有相同的“提交所有事情!”那里的问题。如果你这样做了,那么你就知道这是一个 git 与 VSCode 的事情,而且 iCloud 与它没有任何关系。如果不出意外,从等式中删除该变量将有助于澄清问题的根源。

祝你好运!

【讨论】:

以上是关于在 VSCode 中保存文件会删除 git repo 中的所有跟踪文件的主要内容,如果未能解决你的问题,请参考以下文章

使用vscode中的git不小心删除文件,怎么恢复

vscode-git中的U,M和D文件标记含义

在 vscode 中从 git 中删除 node_modules

Linux vscode 无法保存 修改文件夹权限

VS Code:保存时删除换行符

VSCode Git 退出并保存提交编辑器?