INI オーバーレイマージャー
INI / 設定ファイルを、1 つまたは 2 つのオーバーレイファイルとマージします。デプロイ時にデフォルト、環境、ローカルの設定を重ねるのと同じ方法です。上書きされる値はその場で編集されるため、ベースファイルのコメント、空行、キーの順序、インデントは保持されます。変更レポートでは、どのキーが追加・変更・据え置きになったかを正確に確認できます。
入力
デフォルトの設定です。このファイルのコメント、順序、書式が、マージ後の出力に残ります。
ベースの上に適用されます。オーバーレイに書かれたキーだけが変更されます。
最後に適用されるため、1 つ目のオーバーレイより優先されます。2 ファイルだけのマージなら空欄のままにしてください。
オプション
キーと同じ行にあるインラインコメントは、この設定がオフでも常に残ります。
出力
| セクション | キー | ベースの値 | マージ後の値 | 変更 |
|---|---|---|---|---|
| No data yet | ||||
このツールを使う他の方法
REST API
curl -X POST https://api.iotools.cloud/v1/tool/ini-overlay-merger \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"baseIni": "; Application defaults — keep this file in versi…",
"overlayIni": "; production.ini\ndebug = true\n\n[server]\nhost = 0…",
"secondOverlayIni": "",
"newKeys": "add",
"preserveComments": "true",
"ignoreCase": "",
"assignment": "spaced"
}'ご自身のアカウントのキーに差し替えてください。ツールのフィールドがそのままリクエストボディになります——ラッパーはありません。
AIエージェントに依頼する
Use the IOTools `ini-overlay-merger` tool (INI Overlay Merger) on this input:
YOUR_INPUT_HEREIOTools MCPサーバーに接続された任意のエージェントにこれを貼り付け、入力内容を追加してください。
埋め込みウィジェット
<iframe
src="https://iotools.cloud/embed/ini-overlay-merger/"
width="100%" height="520" frameborder="0" scrolling="no" loading="lazy"
title="INI オーバーレイマージャー — iotools.cloud"
sandbox="allow-scripts allow-forms allow-same-origin allow-downloads allow-popups allow-popups-to-escape-sandbox"
allow="clipboard-write"
style="width:100%;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden"></iframe>
<script src="https://iotools.cloud/embed.js" async></script>ご自身のページに貼り付けるだけ——無料、キー不要、リンクを掲載するだけです。
| API/MCP 1回あたりの費用 | 5クレジットから |
|---|---|
| クレジットが足りませんか? | 料金を見る |
次の方法でも利用可能
ガイド
このツールの役割
INI ベースのプロジェクトの多くは、デフォルト設定を書いた 1 つのファイルと、環境ごとの小さなファイルを持っています。たとえば app.ini と production.ini、または defaults.ini → staging.ini → local.ini のような構成です。これらの層を手作業でマージすると、ミスが入り込みやすくなります。キーを書き忘れたり、ベースファイルの古い値が本番環境にそのまま残ったりします。
このツールは、ベースの INI の上にオーバーレイを適用し、解決後のファイルと、どのキーが追加・変更・据え置きになったかのレポートを表示します。
多くのマージツールは、両方のファイルをオブジェクトに変換してから書き出し直します。その結果、コメントは黙って消え、キーの順序も変わってしまいます。このツールはそうしません。ベースファイルの値をその場で編集するため、コメント、空行、キーの順序、インデント、さらに上書きされる行の末尾にあるインラインコメントまで、マージ後もすべて残ります。出力はそのままコミットできるファイルです。
使い方
- ベースの INI(デフォルト設定)を最初の入力欄に貼り付けます。
- オーバーレイ(環境ごとのファイル)を 2 つ目の入力欄に貼り付けます。
- 必要に応じて 2 つ目のオーバーレイを追加します。これは最後に適用されるため、1 つ目より優先されます。
defaults → environment → localの順で、実際のデプロイでも解決される順序と同じです。 - 変更内容の表を確認し、マージ後の INI をコピーまたはダウンロードします。
すべての処理はブラウザ内で行われます。どちらのファイルもアップロードされません。
設定
- オーバーレイにしかないキー: 追加する(デフォルト)を選ぶと、ベースで宣言されていないキーをそのセクションの末尾に追加します。必要に応じて、ファイル末尾にセクションも作成します。無視するを選ぶと、ベースですでに宣言されているキーだけをマージします。ベースファイルが正式なスキーマで、オーバーレイの誤字によって設定が黙って増えてしまうのを防ぎたい場合に向いています。
- ベースファイルのコメント行と空行を残す: デフォルトでオンです。オフにすると、コメントのないコンパクトな結果になります。キーと同じ行にあるインラインコメントは、どちらの設定でも残ります。
- セクション名とキー名で大文字と小文字を区別しない: INI パーサーには、大文字と小文字を区別するものと区別しないものがあります。オーバーレイが
[Server]、ベースが[server]と書いている場合に、同じセクションとして扱いたいときにオンにします。 - 追加されるキーの代入形式: 新しく追加される行を
key = valueにするかkey=valueにするかを選びます。既存の行は、ベースで使われていた書式をそのまま保ちます。
変更レポート
オーバーレイが変更したキーはすべて、ベースの値、マージ後の値、次の 4 つのいずれかの判定とともに表に表示されます。
- Changed: オーバーレイが別の値に置き換えました。
- Unchanged: オーバーレイが、ベースにすでにあった値を設定しました。多くの場合、オーバーレイが古くなっていることを示すので、その行は削除できます。
- Added: キーはオーバーレイにしか存在せず、末尾に追加されました。
- Ignored: キーはオーバーレイにしか存在せず、無視するが選ばれていたため、出力には含まれません。
4 つの判定は、表と同じ英語のラベルで表示されます。
[section.subsection] という名前の場合は?
ドットを含むセクションヘッダーは、1 つの文字通りのセクション名として扱われ、ファイル間でキーが 1 つずつ照合されます。マージでは、これが安全な解釈です。構造を変えることはありません。ドット付きヘッダーをネストしたオブジェクトに展開したい場合は、結果を INI から JSON への変換ツール に通してください。
3 つより多くのファイルをマージできますか?
最初の 3 つをマージし、その結果をベースの入力欄に貼り付け直して、次のオーバーレイを追加してください。2 つの設定を結合するのではなく比較したい場合は、テキスト比較 で行単位の差分を確認できます。