envdiff を使う理由
- 論理比較。行ではなくキーと値を比較します。順序・コメント・空行は影響しません。
- 4つの形式。
.env、JSON、TOML、ini に対応。JSON/TOML のネストしたキーはdb.hostのようなパスになります。 - シークレットのマスク。必要に応じて password・token・secret・key などのキーの値を
[REDACTED]と表示します。 - ブラウザのみ。API なし。ファイルは端末の外に出ません。状態は URL のフラグメントで共有できます。
設定の比較方法
- 形式を選びます(左右共通)。
- 各パネルにテキストを貼り付けるかファイルをアップロードします。両方必須です。
- 「比較」を押すと、左のみ・右のみ・値が変わったキーが表示されます。
- 必要ならマスクをオンにし、「共有」で状態付きのリンクをコピーします。
キー・形式・シークレット
envdiff は行ではなくキーを比較します。形式は混在させません。ネストした JSON と TOML はドット区切りのパスに展開され、ini のセクションは section.key になり、.env は KEY=VALUE として読み込まれます。
ヒント:
- コメント・空行・キーの順序は無視されます。
- 配列はインデックス付きで展開されます(例:
servers[0].host)。 - 値はテキストとして比較します。JSON の数値
5432と .env の5432は同じです。 - マスクは表示だけを変えます。password・token・secret・key などのキーは [REDACTED] になります。
- YAML には
yamaster、漏えいしたシークレットの検出にはsecret-scannerを。
主な用途
- dev・staging・production 間で .env を比較する;
- デプロイ前後で設定を確認する;
- ある環境に存在しないキーを見つける;
- テキスト diff のノイズなしに JSON・TOML・ini の変更を確認する;
- リンクで比較結果を共有する(本物のシークレットは含めない)。
よくある質問
異なる形式を比較できますか?
いいえ。左右で1つの形式を選び、形式の混在には対応していません。
コメントや順序は影響しますか?
いいえ。キーと値だけを比較します。
データはアップロードされますか?
いいえ。解析と比較はブラウザ内で行われ、API はありません。
マスクは何をしますか?
password・secret・token・key などのキーの値を [REDACTED] と表示します。比較自体は実際の値で行います。
ネストしたキーはどう表示されますか?
オブジェクトとテーブルはドット、配列はインデックスで表します(例:db.host、servers[0])。