Diff on mac¶
調査¶
macで使えるdiffツール¶
- 標準ではコマンドラインツール diff が使えます
- colordiffを追加インストールすると見やすくなります(Homebrewからインストール可)
- icdiffを追加インストールするとコマンドラインで2つのファイルを横並びで比較できます(Homebrewからインストール可)
- Homebrewでdiffで検索するとCasksから difffork, diffmerge, kdiff3, ksdiff が使えます
- DiffForkは古い(2011年)のでM1には非対応か、また一時商用製品だったように見える
- DiffMergeはクロスプラットフォーム対応、M1には非対応
- KDiff3はクロスプラットフォーム対応、macOS版もあるがM1は非対応らしき
- Meld クロスプラットフォームツール対応、M1には非対応
- Appleの標準開発ツールXcodeに含まれる FileMerge、M1対応
- VisualDiffer、M1対応、(4.99ドル)
- テキストエディタ、ソフトウェア統合開発環境などに含まれる差分表示機能
- Visual Studio Codeで2つのファイルの差分を表示
- 商用製品も多数あり。
- Beyond Compare(Pro 60ドル, Standard 30ドル)
- DeltaWalker (Oro 90ドル, Pro 60ドル, Standard 40ドル)
- CompareMerge(13.99ドル)
機能制限のある無料版あり。M1には非対応らしき
M1プロセッサ非対応なツールは、Rosetta2でIntelプロセッサコードからM1プロセッサコードへの変換処理が入るので遅くなる
インストール・設定¶
コマンドライン環境¶
colordiffを使う¶
Homebrewでインストールできます。 brew install colordiff
colordiffコマンドを明示的に打って実行するか、aliasでdiffで実行します。aliasでdiffをcolordiffに設定する設定を次に示します。
- .zshrc
if [[-x `which colordiff` ]]; then alias diff = colordiff fi
統合開発環境¶
Visual Studio Codeの差分機能¶
2つのファイルを横並び、またはインラインで変更行、文字を色付けして差分表示します。
手順¶
- 比較元ファイルをactiveに
- コマンドパレットから、アクティブファイルとの比較(File: Compare Acctive File With …)で比較先ファイル指定
- 横並びまたはインラインの切替は、右上[…]からインラインビューの切替で変更
コマンドラインから起動
- code -d file1 file2
コマンドラインからVisual Studio Codeを実行するには、パスを通す必要があります。いくつか方法があります。
- コマンドパレットから、shell Command: install
/usr/local/binにコマンドが追加される、削除は同様shell Command: uninstall - PATHに/Applications/Visual Studio Code.app/Contents/Resources/app/binを追加