Package.json Diff

2つのpackage.jsonファイルを比較して、依存関係の差分、バージョン変更、スクリプトの修正を即座に確認できます。

このツールについて

Package.json Diffツールは、2つのpackage.jsonファイルを比較し、 dependencies、devDependencies、peerDependencies、optionalDependencies、 およびscriptsセクションのすべての差分をハイライトする無料のブラウザベースユーティリティです。 2つの大きなJSONファイルを1行ずつ読む代わりに、両方のファイルを貼り付けるだけで、 どのパッケージが追加、削除、変更されたかを構造化テーブルで即座に確認できます。

ツールはsemverバージョンバンプタイプ(メジャー、マイナー、パッチ、プレリリース、 ダウングレード)を自動検出するため、アップグレードの影響を素早く評価できます。 サマリーパネルでは、依存関係の合計数、追加、削除、アップグレード、ダウングレードの数を一目で確認できます。

より一般的な構造的JSON比較が必要な場合は、 JSON Diffツールをお試しください。 テキストレベルの比較には、Diff Viewerが 行ごとのハイライトを提供します。

すべての処理はブラウザ内で完全に実行されます。package.jsonファイルが サーバーに送信されることはないため、プライベートまたはプロプライエタリな プロジェクト設定でも安全に使用できます。

使い方

  1. 左側のPackage A(変更前)テキストエリアに最初のpackage.jsonの内容を貼り付けます。
  2. 右側のPackage B(変更後)テキストエリアに2番目のpackage.jsonの内容を貼り付けます。
  3. CompareをクリックするかCtrl+Enterを押して差分分析を実行します。
  4. サマリーパネルで追加、削除、変更、アップグレード、ダウングレードの合計数を確認します。
  5. フィルターボタンを使用して、追加のみ、削除のみ、変更のみ、または変更なしのパッケージに絞り込みます。
  6. 各セクション(dependencies、devDependencies、peerDependencies)の依存関係テーブルでバージョンバンプ指標(MAJOR、MINOR、PATCH、DOWN)を確認します。
  7. scriptsテーブルで追加、削除、変更されたnpmスクリプトを確認します。
  8. Copy ResultsをクリックするかCtrl+Shift+Cを押して差分出力をフォーマットされたテキストとしてコピーします。

人気のpackage.json差分比較の例

すべてのpackage.json差分比較の例を見る →

よくある質問

どの依存関係セクションが比較されますか?

ツールはdependencies、devDependencies、peerDependencies、optionalDependenciesを比較します。scriptsセクションも別途比較されます。すべてのセクションは独立して分析され、個別のテーブルに表示されます。

バージョンバンプ検出はどのように機能しますか?

ツールはsemverプレフィックス(^、~、>=など)を除去し、バージョンAとBのmajor.minor.patch番号を比較します。変更はMAJOR(破壊的変更)、MINOR(機能追加)、PATCH(バグ修正)、PRE(プレリリース)、DOWN(ダウングレード)としてラベル付けされます。

package-lock.jsonやyarn.lockを比較できますか?

このツールはpackage.jsonファイル専用に設計されています。ロックファイルはネストされた依存関係ツリーを持つ異なる構造です。ロックファイルを生テキストとして比較するには、Diff Viewerツールをお試しください。

セクション間でパッケージが移動した場合検出されますか?

現在、各セクション(dependencies、devDependenciesなど)は独立して比較されます。devDependenciesからdependenciesに移動したパッケージは、devDependenciesで「removed」、dependenciesで「added」として表示されます。

モノレポのワークスペース比較に使えますか?

はい。どこから取得したpackage.jsonでも2つのファイルを貼り付けて比較できます。ルートとワークスペースのpackage.jsonファイルの比較や、モノレポ内の異なるワークスペース間のパッケージ比較に便利です。

データは安全ですか?

はい。すべての処理はJavaScriptを使用してブラウザ内で完全に実行されます。package.jsonの内容、依存関係名、バージョン番号がサーバーに送信されることはありません。ブラウザの開発者ツールのネットワークタブで確認できます。

^、~、*などのバージョン範囲はどう扱われますか?

ツールはテーブルに完全なバージョン文字列をそのまま表示します。バンプ検出では範囲プレフィックス(^、~、>=など)を除去し、基になるsemver番号を比較します。複雑な範囲やワイルドカードで解析できない場合、バンプタイプは「?」と表示されます。

関連ツール