← 中文资源

简体中文版本

环境变量文件差异对比 CLI

零依赖解析两个 .env 文件,报告仅左侧有、仅右侧有与值发生变化的键,绝不打印任何值。

阅读英文原文

目标

解析两个 .env 文件并把每个键归类为 only-in-left、only-in-right 或 changed 三类,输出只含键名不含值,因此可以安全贴进 issue 与评审。

要点

解析器处理 export 前缀、注释、单双引号包裹与行内注释;diff 输出三个桶各占一行。样例输出 DEBUG 仅在左侧、VERBOSE 仅在右侧、PORT 发生变化。

提示

demo 不打印值是刻意设计——键名即足够定位差异且不泄密。

验证

node –test 两个用例覆盖解析与分类;CLI 对示例文件输出三行差异,退出码为 0。 复现命令:

node --test envdiff.test.mjs
node envdiff.mjs base.env feature.env

预期输出要点:For a base and feature env file the CLI prints only-in-left, only-in-right, and changed sections with one key per line.

实测证据:Node 22.23.2: node –test -> 2 passed; CLI diff of base and feature env files printed only-in-left DEBUG, only-in-right VERBOSE, changed PORT.