【问题标题】:How to stop VS Code to duplicate files? (FileName 2.css)如何阻止 VS Code 复制文件? (文件名 2.css)
【发布时间】:2020-10-22 19:29:14
【问题描述】:

我在 Mac 中使用 VSCode,通常它们会随机自动复制一些文件。我怀疑这可能与某些 git config 或命令有关。如您所见,这次 VisualStudio 代码仅生成 263 个文件,名称末尾为 2,但有时会发生 3,000 或 5,000 个文件。

为什么会这样?

我怎样才能阻止它?

Version: 1.46.1
Commit: cd9ea6488829f560dc949a8b2fb789f3cdc05f5d
Date: 2020-06-17T21:17:14.222Z (2 wks ago)
Electron: 7.3.1
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Darwin x64 19.5.0

这是我当前激活的扩展。

【问题讨论】:

  • 这不是默认行为。禁用所有扩展并一一启用,直到找到罪魁祸首。它是您使用的某种文件版本控制吗?你收到过34 吗?
  • 始终为 2,因为我标记为在发生这种情况时放弃所有更改。我认为这与 git 有关,而不是与另一个扩展有关。这并非每天都发生。它是随机发生的,所以我不能没有所有扩展,直到再次发生。
  • 我们真的猜不出来..

标签: macos visual-studio-code vscode-settings


【解决方案1】:

肯定不是由 GIT 本身引起的。 (GIT 不会..创建新文件,除非有人告诉他这样做。)

想到两个想法:

  1. 这种行为在 VScode 中是不正常的。也许在使用某些扩展时会发生这种情况?例如,Local History 扩展有时会生成额外的文件。

  2. 这样看,它几乎看起来像是有人将一个文件夹复制/粘贴到自身中,而不是覆盖文件,它为每个文件创建了新的副本。有可能是这样吗?

  3. 判断 GIT 本身是否有问题的简单方法是使用 Notepad++ 一两天,看看问题是否仍然存在。如果问题消失了,那么您就知道它与 VScode 直接相关。

【讨论】:

  • 它并不适用于所有文件,看起来是随机的,但我猜这是我从远程存储库获取和变基的文件的重复。但我每天都会做多次,而每周只有几次重复发生。我将查看当地的历史,并尝试创建一个关于何时以及为何重复的模式。
  • 我做了一些测试,观察得更好。我没有使用本地历史。我在我的问题上添加了我正在使用的扩展。另外,我仍然认为这可能与 git 有关,因为 VSCode 通常会复制我的同事或我最近工作的文件。在保存备份的快速/自动操作之后,看起来像是某种类型的附带效应。但我不确定是什么。
  • @RafaelPerozin 每次运行 GIT 时都可以运行一些自动化操作。也许检查 /.git/hooks 中的脚本(如果该文件夹存在。)以查看是否有任何可能导致问题的自动脚本正在运行。
  • @RafaelPerozin 你也可以简单地运行git status每次运行一个git命令,最终你运行的一个git命令会触发问题。
  • 我知道,但我也在这样做,因为我不能在不检查重复文件的情况下运行git add
【解决方案2】:

由于随机获取的文件经过大量调查:

  • 数字重复和后缀
  • 已删除

我发现它是由 iCloud Drive 引起的。它默认配置为同步我的用户目录。禁用 iCloud Drive 或对其进行适当配置(通过排除由 git 管理的任何项目)应该可以解决此问题。


综上所述,在你的根文件名中添加.nosync即可解决问题。

示例:您的应用文件夹名称为awesome-app,将其更改为awesome-app.nosync,iCloud 将不会同步它。

【讨论】:

  • 天啊,非常感谢。我开始在文件名末尾使用.nosync,这个无聊的问题就停止了。
【解决方案3】:

您还可以通过将 .nosync 添加到文件名来从 iCloud 中排除文件

【讨论】:

    猜你喜欢
    • 2021-10-21
    • 1970-01-01
    • 2016-06-28
    • 2017-12-11
    • 2017-04-18
    • 2021-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多