【发布时间】:2018-01-04 19:37:19
【问题描述】:
我正在使用 Node.js 在 Windows 2016 上使用特定目录上的许多文件类型过滤器启动 Watchman。此目录用于暂存。上传的文件将根据文件名路由到其他文件夹。
我遇到的问题是 Watchman 正在拾取正在上传的文件。它会导致移动进程在锁定时失败。我正在考虑使用这个包来检查文件状态(@ronomon/opened),然后再将其标记为移动的候选者。有没有更好的方法?
谢谢,
保罗
【问题讨论】:
我正在使用 Node.js 在 Windows 2016 上使用特定目录上的许多文件类型过滤器启动 Watchman。此目录用于暂存。上传的文件将根据文件名路由到其他文件夹。
我遇到的问题是 Watchman 正在拾取正在上传的文件。它会导致移动进程在锁定时失败。我正在考虑使用这个包来检查文件状态(@ronomon/opened),然后再将其标记为移动的候选者。有没有更好的方法?
谢谢,
保罗
【问题讨论】:
请看一下这个听起来与您的问题几乎相同的问题;除了我在下面的内容之外,它还有其他一些替代方案和细节:https://github.com/facebook/watchman/issues/562#issuecomment-355450096
在这里总结这个问题:您需要让文件系统稳定下来。您可以在.watchmanconfig 中设置一个settle 选项来控制它:
{"settle": 60000}
您将该文件放在上传目录中(并确保您不会将其误认为是上传的文件并将其移出),然后重新创建您的手表。
【讨论】: