在 Git 中克隆时收到“core.useBuiltinFSMonitor 将很快被弃用”消息

Ang*_*rma 39 windows git

我最近安装git version 2.36.0.windows.1并克隆了一个存储库后,我收到了以下消息。

提示: core.useBuiltinFSMonitor 将很快被弃用;使用 core.fsmonitor 代替

提示:使用“git config suggest.useCoreFSMonitorConfig false”禁用此消息

将值更改为false会禁用该消息。

我的问题是:

  1. core.useBuiltinFSMonitor和是什么core.fsmonitor
  2. 考虑到我刚刚安装了 Git,为什么不将值自动设置为 false,而是要求用户这样做?

谢谢!


编辑: 将我之前的编辑作为单独的答案放在下面。

Ang*_*rma 38

感谢克里斯的解释和环顾四周的链接。

长话短说

人们可以安全地使用该命令git config --global core.fsmonitor true来永久删除该消息。

克里斯的回答中的内容及其原因的答案如下。


  1. 似乎两者都是相互关联的,因此他们还没有禁用其中之一。

新的 FSMonitor 功能由 core.useBuiltinFSMonitor 布尔值控制。 关联

  1. 在最近的一篇文章中,他们似乎已经解决了这个问题

所以我知道内置 FS 监视器实际上并未被弃用,只是配置中的名称将会更改,在当前版本上是否有任何方法可以使用新名称,或者是摆脱该名称的唯一方法通过提供的命令禁用它的消息?

我想我们应该澄清说 core.useBuiltinFSMonitor=true 是实验性的,请改为设置 core.fsmonitor=true`。 关联

  1. 最后,提示的原因:

随着该功能向上游进入核心 Git,我们决定重载现有的 core.fsmonitor 设置,以采用内置 FSMonitor 的钩子路径名或布尔值。但是,用户可能在 Windows 系统上安装了多个版本的 Git。一种位于 C:/program files/... 中,另一种由 Visual Studio 等工具安装的隐藏版本。这些可能处于不同的修订级别,因此一个安装可能只理解旧关键字,而一个版本可能理解两者(在过渡期间)。因此,自动转换会破坏旧版本。因此,警告用户并让他们决定会更安全。(如果他们知道自己有多个版本,他们现在可以同时设置两个版本。) 链接


Chr*_*ris 14

Git for Windows 2.30.2(2021 年 3 月)的发行说明提供了一些线索:

\n
\n

Windows 版 Git 现在附带了一个实验性的内置文件系统监视器,无需安装 Watchman 和设置core.fsmonitorfeature.manyFiles=true 可以通过设置和 feature.experimental=true(或直接通过core.useBuiltinFSMonitor=true)来打开它。

\n
\n

core.useBuiltinFSMonitorGit 网站上没有记录,即使在应该存在的旧版本上也是如此,但它似乎是一个为想要生活在前沿的用户启用内置文件系统监视器的设置。

\n

您在问题中引用的提示表明,此功能现在被认为足够稳定,可以作为默认功能。事实上,如果我们查看文档core.fsmonitor,我们会发现情况就是这样\xc2\xb9:

\n
\n

如果设置为 true,则为此工作目录启用内置文件系统监视器守护进程

\n
\n

较旧的文档显示此设置在此更改之前确实存在,但它用于指向用作监视器的外部命令。)

\n

该文档还解释了为什么我们首先需要文件系统监视器,以及为什么内置监视器更可取:

\n
\n

与基于钩子的文件系统监视器一样,内置文件系统监视器可以加快需要刷新git status包含许多文件的工作目录中的 Git 索引(例如 )的 Git 命令。内置监视器无需安装和维护外部第三方工具。

\n
\n

至于为什么在克隆时会收到此警告,我不确定。.gitconfig您的主目录中是否已有全局文件?您的雇主是否可能将其作为默认配置的一部分提供?

\n
\n

\xc2\xb9在撰写本文时,此功能被记录为仅在 Windows 和 macOS 上可用。

\n