クロスプラットフォームな差分ツールにはKDiff3がオススメ
作業をしているとソースコードやデータの変更内容を確認したいときがある。こういうときに差分ツールを使う。WindowsとLinuxで共通して使えそうなものを探した。
クロスプラットフォームで自由な差分ツールは数が限られる。開発の活発さや利用者数から吟味すると、以下2ソフトが検討対象として残った。
- Meld
- KDiff3
MeldはGTK+、KDiff3はQt4ベースの差分ツールとなっており、機能としてはどちらも似たような印象だ。
MeldとKDiff3については以下に情報があった。
- ここが比較していてわかりやすいかも( Meld vs P4Merge vs Kdiff3 – Slant)。
- kdiff3は日本語がうまく扱えないという噂がある( Mercurial でマージツールに Meld を使う – A Day in Serenity @ kenjis)。
- KDiff3 1文字単位での比較とマージが出来るツール « 各種パソコン技術情報
ざっと検索した限りだと、Meldのほうが情報が多く人気のようだ。しかし、実際にインストールして試したところ、以下の理由でKDiff3のほうがよいと判断した。
MeldをWindowsにインストールしても右クリックのコンテキストメニューに追加されない。
実際に差分ツールを使うときにいちいちソフトを起動してファイルパスを選択してやるのは煩雑だ。右クリックでファイラーから即座に比較したい。KDiff3をWindowsにインストールすると右クリックのコンテキストメニューに専用メニューが追加され、即座に比較が可能だ。
なお、Windowsに絞っていいならWinMergeがよさそうだ。開発も活発でExcelやWordなどのオフィス文書の差分も取れる。WinMergeは3でクロスプラットホームになるらしい。けれど、開発は停止しているので期待はできない。
商用だが、無料なP4Mergeは少し人気がある(Gitのマージツールにp4mergeを使ってみた – wadahiroの日記)。
参考までに、差分ツールの比較調査結果を以下に記す。
プラットフォーム | 比較対象 | ○:対応、×:未対応、-:未調査 | |||||||||
名前 | 最終更新日 | ライセンス | Linux | Windows | Mac | MSOffice | 画像 | ディレクトリ | 編集 | URL | |
Araxis Merge | 2016-02-09 | 商用 | × | ○ | ○ | ○ | ○ | – | – | – | http://www.araxis.com/merge/ |
Beyond Compare | 2016-03-03 | 商用 | ○ | ○ | ○ | – | – | ○ | – | – | http://www.scootersoftware.com/ |
DF | 2007-09-04 | フリーソフト | × | ○ | × | – | – | – | – | × | http://www.vector.co.jp/soft/win95/util/se113286.html |
DiffMerge | 2013-10-01 | 商用 | ○ | ○ | ○ | – | – | – | – | – | https://sourcegear.com/diffmerge/ |
Diffuse | 2014-07-18 | GPLv2+ | ○ | ○ | ○ | – | – | – | × | – | http://diffuse.sourceforge.net/ |
ECMerge | 2015-12-02 | 商用 | ○ | ○ | ○ | – | – | ○ | ○ | – | http://www.elliecomputing.com/en/Home/default.asp |
KDiff3 | 2014-07-04 | GPLv2 | ○ | ○ | ○ | – | – | – | ○ | ○ | http://kdiff3.sourceforge.net/ |
Kompare | 2015-10-17 | GPLv2 | ○ | △ | ○ | – | – | – | – | × | http://www.caffeinated.me.uk/kompare/ |
Meld | 2015-12-12 | GPLv2 | ○ | ○ | △ | – | – | – | ○ | ○ | http://meldmerge.org/ |
Perforce P4Merge | 2015-01-01 | 商用 | ○ | ○ | ○ | – | – | – | × | – | https://www.perforce.com/downloads/integrations |
Rekisa | 2009-04-16 | フリーソフト | × | ○ | × | – | – | – | – | – | http://frozenlib.net/rekisa/ |
tkdiff | 2011-11-27 | GPLv2+ | ○ | ○ | ○ | – | – | – | – | – | https://sourceforge.net/projects/tkdiff/ |
WinMergeJP | 2016-01-29 | GPLv2 | × | ○ | × | ○ | – | – | – | – | http://www.geocities.co.jp/SiliconValley-SanJose/8165/winmerge.html |
xdocdiff | 2009-11-23 | 修正BSD | × | ○ | × | ○ | ○ | – | – | – | http://freemind.s57.xrea.com/xdocdiff/ |
xxdiff | 2013-08-08 | GPLv2 | ○ | ○ | ○ | – | – | – | – | – | http://furius.ca/xxdiff/ |
参考:
- Comparison of file comparison tools – Wikipedia, the free encyclopedia
- diff utility – Wikipedia, the free encyclopedia
なお、Ubuntuではファイラーに標準のNautilusを使っていれば、拡張機能をインストールすることで右クリックのコンテキストメニューにメニューを追加できる(How to Add ‘File Compare’ to Ubuntu Nautilus Context Menu | UbuntuHandbook)。
以下のコマンドでnautilusの拡張機能をインストールしてNautilusを再起動すれば有効になる。
sudo apt-get install nautilus-compare
nautilus -q
差分ツールを変更したければ、nautlius-compare
コマンドを実行して表示されるダイアログから変更できる。