テキスト差分比較(diff)の使い方とGitコマンドでの比較手法

開発 Git
結論:30秒で差分を確認する
  • ブラウザで確認: 下のオンラインツールに 2 つのテキストを貼り付けて差分ハイライト
  • ファイル間コマンド: diff -u file1.txt file2.txt
  • Git 変更確認: git diff (未ステージ) / git diff --staged (ステージ済み)

1. オンラインテキスト差分比較ツール

「比較元(Old)」と「比較対象(New)」のテキストを貼り付けることで、追加(緑)・削除(赤)された行がリアルタイムで色分けハイライト表示されます。

🔍 この場でテキストの差分を確認する

※ 入力時に自動で差分を表示します(1行=文字単位、複数行=行単位)

削除 追加

2. CLI(ターミナル)での差分比較手順

① 2つのローカルファイルを比較する (diff)

Unified format (-u) オプションを使用すると、Git のコミット差分のような読みやすい形式で出力されます。

# 2つの設定ファイルの差分を Unified 形式で表示
diff -u config.old.json config.new.json

# 空白文字の差異を無視して比較 (-w)
diff -uw config.old.json config.new.json

② Git で作業ツリーとコミットの差分を比較する (git diff)

# 未ステージの変更を確認
git diff

# ステージ済み (git add 後) の変更を確認
git diff --staged

# 2つのブランチ間の差分を確認
git diff main feature-branch

3. 注意点(ハマりどころ)

  1. 改行コードの混在(CRLF vs LF)
    • Windows 環境と Linux/Mac 環境で作成されたファイルを比較すると、見た目は同じでも全行が「変更済み」と判定される場合があります。diff --strip-trailing-cr オプションを使うか、エディタで改行コードを統一してください。
  2. タブとスペースの差異
    • インデント文字(Tab vs Space 4個)の違いで差分が大量に出る場合は、diff -w または git diff -w で空白無視オプションを指定します。