差分チェッカーについて
差分チェッカーは、2つのバージョンのテキストを比較して、何が変わったかを表示します。追加された行、削除された行、そして編集された行の中で異なる単語を正確に示します。契約書などの文書、設定ファイル、コードの断片、翻訳など、修正が加えられたあらゆるテキストに役立ちます。
比較はオープンソースのjsdiffライブラリを使ってブラウザ内で行われます。テキストはアップロードされないため、機密文書や非公開のコードにも安心して使えます。
使い方
- 以前のバージョンを「変更前」に、新しいバージョンを「変更後」に貼り付けます。各欄の下にある「ファイルを開く」でテキストファイルを読み込むこともできます。
- 比較は自動で更新されます。概要には、追加された行と削除された行の数が表示されます。
- 空白や大文字・小文字の違いが重要でない場合は、「空白を無視」や「大文字・小文字を無視」にチェックを入れます。
- 「並べて表示」と「統合表示」を切り替えます。変更された単語は各行の中で強調表示されます。
- 「.diffをダウンロード」または「差分をコピー」で、変更を標準的なunified diff形式で保存できます。
主な機能
- 行単位と単語単位: まず行を対応付け、編集された行の中では変更された単語を強調表示します。
- 2つの表示方法: 広い画面向けの並べて表示と、スマートフォン向けのコンパクトな統合表示があり、どちらも両側の行番号を表示します。
- 無視するオプション: 空白やインデントの違い、または大文字・小文字の違いを無視して比較できます。
- unified diffの書き出し: 変更を.diffファイルとしてダウンロードまたはコピーできます。git apply、patch、コードレビューツールで使えます。
- 軽快な動作: 大きな比較はバックグラウンドのスレッドで実行されるため、ページが固まることはありません。
使用例
修正された契約書を確認する
承認したバージョンと、戻ってきたバージョンを貼り付けます。ほかは同じ文の中で数字が1つだけ変わっている場合も含め、変更された条項がはっきりわかります。
設定ファイルを比較する
「ファイルを開く」で2つの.envファイルやYAMLファイルを開き、「空白を無視」にチェックを入れると、本当に異なる設定だけが表示されます。
変更を共有する
スクリプトの2つのバージョンを比較したら、「.diffをダウンロード」をクリックしてファイルをチケットに添付します。同僚はgit applyでその変更を適用できます。
制限事項と注意点
- それぞれの側に入れられるテキストは5 MBまでです。WordやPDFの文書などのバイナリファイルは比較できないため、テキストをコピーして比較してください。
- 大きく異なるテキストは比較に時間がかかることがあります。比較は5秒で停止し、小さな部分に分けて比較するよう案内します。
- .diffの書き出しでは元のテキストを比較します(WindowsとUnixの改行は同じものとして扱います)。無視するオプションは、ページ上の表示にだけ影響します。
- ページの速さを保つため、表示するのは最大5,000行までです。.diffのダウンロードにはすべての変更が含まれます。
- 比較できるのは2つのテキストだけです。3方向のマージには対応していません。
よくある質問
テキストはサーバーにアップロードされますか?
いいえ。2つのテキストはブラウザで動くJavaScriptで比較されます。ネットワークに送信されることも、保存されることもありません。
「空白を無視」は何をしますか?
連続するスペースやタブを1つのスペースにまとめ、行頭と行末のスペースを取り除いてから行を比較します。インデントや空白だけが異なる行は、同じものとして扱われます。
.diffファイルとは何ですか?
.diff(または.patch)ファイルは、変更をunified diff形式で記録したものです。削除された行は"-"で、追加された行は"+"で始まります。Gitなどのバージョン管理システムも同じ形式を使います。
単語が1つ違うだけなのに、行全体が変更扱いになるのはなぜですか?
その行は変更された行として表示され、行の中の異なる単語はより強く強調表示されます。非常に長い行では、比較を速く保つため、単語単位の強調表示を省略します。