用途:在修改代码后、宣布工作完成前运行卫生检查,避免因 hygiene 失败导致提交被拒。VS Code 通过 git pre-commit 钩子执行该检查。
主要能力:检查暂存文件中的多类问题,包括非 ASCII 字符(em-dash、弯引号、emoji 等)被拒绝,需改用 ASCII 等价写法;双引号仅用于外部化(本地化)字符串,其余一律用单引号;所有文件必须包含 Microsoft 版权头;缩进只用制表符,不用空格;TypeScript 文件须与格式化器输出一致;TypeScript 文件经 ESLint 检查;CSS 文件经 stylelint 检查。
使用方式:对暂存文件运行 npm run precommit,它执行 node --experimental-strip-types build/hygiene.ts,仅扫描 git diff --cached 中的暂存文件。也可直接检查指定文件而不先暂存:node --experimental-strip-types build/hygiene.ts path/to/file.ts。
限制与例外:Unicode 限制可用 // allow-any-unicode-next-line 或 // allow-any-unicode-comment-file 抑制。格式化问题可通过 Format Document 修复。资料未提供其他配置项、平台支持范围或性能说明。