VS Code 的文件更改观察器停止工作
VS Code's file changes watcher stopped working
我有 vsc 版本 1.63.2。我收到以下通知:
“文件更改观察器意外停止。重新加载 window 可能会再次启用观察器,除非工作区无法观察文件更改。”
当我点击重新加载按钮时,问题暂时得到解决,源代码管理显示我的文件发生了变化。 Git 在 CLI 中工作正常; git log --raw
正确显示对我的文件所做的更改。我已经测试了全新的和旧的存储库和工作区。问题发生在所有这些人身上。非常感谢任何解决此问题的帮助!
我今天刚 运行 解决这个问题,通过使用命令面板中的“开发人员:打开日志文件...”命令查看“Window”日志找到了我的解决方案。
就我而言,问题是我在我的工作区中添加了一个文件夹,此后我在文件系统上删除了该文件夹。有问题的日志看起来像:
... [error] [File Watcher (parcel)] Unexpected error: Invalid handle (EUNKNOWN) (path: \path\that\no\longer\exists)
... [error] [File Watcher (parcel)] restarting watcher after error: Invalid handle
希望查看此日志可以帮助您找出特定情况下的问题。
TLDR : 在 Windows 10 上,如果你安装了 Cygwin64 并且你有一个 Git 对于 Windows 更新,检查 Git for Windows path comes before Git from Cygwin path in environment variables.
长版: 今天刚遇到同样的错误。 Git 镜头扩展不再工作。
我在 Win 10 上,所以没有办法(至少我没有找到)增加观察者的限制 like on linux。我的 VS Code 是 v1.66.2,Git Lens extension 是 v12.0.6。
就我而言,日志显示:
... [error] [File Watcher (parcel)] Unexpected error: Invalid handle (EUNKNOWN) (path: cygwin\g\path\that\exists)
注意 ENOSPC !== EUNKNOWN
所以我到处搜索,但几乎没有成功,除了这里 Gordon Christopher Weeks 的回答实际上暗示了我该日志。
然后我想起了几件事:
- 我安装了一个名为 cygwin64 的终端,它允许我使用一些 linux 实用程序,否则在 Win 上不可用(如 rsync);
- 两天前,我授权 Git 更新 Windows (2.35.2);
- 当我安装 cygwin 时,我遵循的教程告诉我在 Windows
path
环境变量 中遵循特定顺序
所以我检查了 path
变量,注意到 Git 更新删除了 git 的初始路径并将其放在最后一个地方。我只需要将它向上移动,在 cygwin64 路径到 git.exe 之前(一个 git 实用程序包含在 cygwin 中)并且一切都恢复正常。
希望这对您有所帮助,这样您就不会浪费我的时间了!
我有 vsc 版本 1.63.2。我收到以下通知:
“文件更改观察器意外停止。重新加载 window 可能会再次启用观察器,除非工作区无法观察文件更改。”
当我点击重新加载按钮时,问题暂时得到解决,源代码管理显示我的文件发生了变化。 Git 在 CLI 中工作正常; git log --raw
正确显示对我的文件所做的更改。我已经测试了全新的和旧的存储库和工作区。问题发生在所有这些人身上。非常感谢任何解决此问题的帮助!
我今天刚 运行 解决这个问题,通过使用命令面板中的“开发人员:打开日志文件...”命令查看“Window”日志找到了我的解决方案。
就我而言,问题是我在我的工作区中添加了一个文件夹,此后我在文件系统上删除了该文件夹。有问题的日志看起来像:
... [error] [File Watcher (parcel)] Unexpected error: Invalid handle (EUNKNOWN) (path: \path\that\no\longer\exists)
... [error] [File Watcher (parcel)] restarting watcher after error: Invalid handle
希望查看此日志可以帮助您找出特定情况下的问题。
TLDR : 在 Windows 10 上,如果你安装了 Cygwin64 并且你有一个 Git 对于 Windows 更新,检查 Git for Windows path comes before Git from Cygwin path in environment variables.
长版: 今天刚遇到同样的错误。 Git 镜头扩展不再工作。 我在 Win 10 上,所以没有办法(至少我没有找到)增加观察者的限制 like on linux。我的 VS Code 是 v1.66.2,Git Lens extension 是 v12.0.6。 就我而言,日志显示:
... [error] [File Watcher (parcel)] Unexpected error: Invalid handle (EUNKNOWN) (path: cygwin\g\path\that\exists)
注意 ENOSPC !== EUNKNOWN
所以我到处搜索,但几乎没有成功,除了这里 Gordon Christopher Weeks 的回答实际上暗示了我该日志。 然后我想起了几件事:
- 我安装了一个名为 cygwin64 的终端,它允许我使用一些 linux 实用程序,否则在 Win 上不可用(如 rsync);
- 两天前,我授权 Git 更新 Windows (2.35.2);
- 当我安装 cygwin 时,我遵循的教程告诉我在 Windows
path
环境变量 中遵循特定顺序
所以我检查了 path
变量,注意到 Git 更新删除了 git 的初始路径并将其放在最后一个地方。我只需要将它向上移动,在 cygwin64 路径到 git.exe 之前(一个 git 实用程序包含在 cygwin 中)并且一切都恢复正常。
希望这对您有所帮助,这样您就不会浪费我的时间了!