はじめに
こんにちは!今回はvimdiffコマンドについて解説します。
vimdiffは、2つ以上のファイルを並べて比較できるコマンドです。vim エディタの比較機能を使ったもの。「このファイル、何が違うんだろう?」という時に、ビジュアルに差分を確認できます。
プログラム開発やコンフィグ変更時の差分確認に超便利。バージョン管理の前にもよく使いますよ。
vimdiffコマンドとは
vimdiffは、複数のファイルをVimエディタで並べて比較表示する外部コマンドです。diffコマンドのテキスト出力と違って、ビジュアルに差分がハイライトされます。
Vimの強力な編集機能を使いながら差分確認ができるので、単なる比較にとどまらず、その場で修正することも可能です。
基本構文
|
|
複数のファイルを比較することも可能です(最大4個まで推奨)。
主なオプション
| オプション | 説明 |
|---|---|
-d |
diffモード(vimdiffと同じ) |
-R |
読み取り専用モード |
-u |
vimrc ファイルを指定 |
+[コマンド] |
起動時にVimコマンドを実行 |
使用例
例1: 2つのファイルを比較
|
|
実行結果:
|
|
異なる行がハイライトされます。
例2: 設定ファイルを比較
|
|
実行結果:
|
|
変更内容をビジュアルに確認。
例3: プログラムのバージョン比較
|
|
実行結果:
|
|
コード変更を視覚的に確認。
例4: 3つのファイルを比較
|
|
実行結果:
|
|
複数ファイルの同時比較。
例5: 読み取り専用モード
|
|
実行結果:
|
|
誤った修正を防ぐために読み取り専用に。
例6: 特定行に移動して開く
|
|
実行結果:
|
|
大きなファイルの特定部分を比較。
例7: パッチを適用した場合の確認
|
|
実行結果:
|
|
パッチが正しく適用されたか確認。
例8: 設定ファイルのマージ
|
|
実行結果:
|
|
設定値の違いを確認して統合。
例9: ログファイルの変更追跡
|
|
実行結果:
|
|
ログの変更内容を確認。
例10: スクリプト出力の比較
|
|
実行結果:
|
|
スクリプト修正の効果を確認。
Tips・注意点
Vim内での操作
|
|
Vimのキーバインディングが有効。
diffコマンドとの違い
|
|
ビジュアルで複雑な差分も理解しやすい。
ファイルの同期
|
|
差分を確認しながら修正可能。
ハイライト色の設定
vimdiffは自動的に色を設定しますが、テーマによっては読みにくい場合があります。
|
|
実践的な使い方
バージョン管理前の確認
|
|
変更内容を完全に把握してからコミット。
デプロイ前の設定確認
|
|
本番とステージングの設定差を確認。
Mergeコンフリクト解決
|
|
Vimで両方のバージョンを並べて確認しながら解決。
バックアップ検証
|
|
バックアップの内容が正確か確認。
まとめ
vimdiffコマンドのポイント:
- 複数ファイルを並べてビジュアルに比較
- diffコマンドより読みやすい
- Vim編集機能で その場修正も可能
-R: 読み取り専用モード]c,[c: 差分ジャンプdo,dp: 差分を同期- 設定ファイル、コード、ログの比較に最適
- よく使う組み合わせ:
vimdiff file1 file2,vimdiff -R file1 file2
diffコマンドのテキスト出力では理解しにくい複雑な差分も、vimdiffならビジュアルに確認できます。開発やシステム管理の効率が大幅に上がりますよ!