はじめに
バージョン管理ツールの1つに、Googleでも採用されているPerforceというものがあります。Perforce社は、バージョン管理ツールだけでなく、マージツールも提供しています。今回はPerforce社製の無償のマージツールPerforce Visual Merge Tool (P4Merge)を使ってみました。
Perforce(パフォース)とは
Perforce社製の有償のバージョン管理ツールです。Perforceの特徴は、Windowsはもちろんのこと、LinuxやMaxOSでも動作するマルチプラットフォームのサポートやツール自体が軽快で高速に動作することなどが挙げられます。
JavaOneの展示会場に出展していた「Perforce」(パフォース)が目にとまりました。プロプライエタリなソースコード管理ツールです。名前は聞いたことがありましたが、実はどんなものかよく分かっていません。Perfoceのサイトによれば、世界中の4700組織で28万人の開発者が使っているデファクトスタンダードということです。
@IT編集部のblog : perforce
Perforceが選ばれているポイントは
- 分散ネットワークで性能がでること
- 動作が速いこと
- バイナリデータも圧縮して効率よく管理できること
- OSを選ばず動作すること
Perforce P4Merge
バージョン管理ツールのPerforce自体は有償ですが、マージツールPerforce P4Mergeは無償で公開されています。
Perforce 自体は商用のバージョン管理システムだが, Visual Merge Tool は無料で配布されている。ダウンロードページから "Core Perforce Windows Installer" を実行し, "Administrator - Custom" から "Visual Merge Tool" 以外のチェックを外せば, Visual Merge Tool のみをインストールすることができる。
Radium Software Development
ダウンロードとインストール
- 以下のサイトから、ファイルをダウンロードします。
- Choose a Component Group:Clients
- Choose a Component:Visual Merge Tool
- Download Component:Windows for 32-bit Intel (x86) を選択することでダウンロードできます。
diffの使い方
P4Mergeを起動すると次のようなシンプルな画面が表示されます。比較したいファイルをドラッグ&ドロップして、OKボタンを押下します。
Ctrl+2で次の差分、Ctrl+1で前の差分に移動することができます。特定の文字列を検索する場合は、Ctrl+fで検索することができます。ファイル内の文字が文字化けして表示される場合は、File−Character Encodingからエンコーディングを指定します。(UTF-8、EUC、Shift_JISなど、日本で利用される主要な文字コードはサポートされています。)
マージの使い方
P4Mergeを起動し、mergeタブを選択します。この画面では、ベースファイルとファイル1、ファイル2と3つのファイルを選択します。
2つのファイルを比較しながら、一方の変更をもう片方に取り込むことをマージと呼ぶものだと思っていたのですが、Perforceのマージ機能は、ベースファイル、ファイル1、ファイル2からそれぞれの変更を取りこんだファイル3を作成できるようです。
黄色のアイコンで表示されるファイルが、ベースファイル。青いアイコンが、左側のファイル、緑色のアイコンが右側のファイルを表しています。そして、3つのファイルをマージした結果が新しいファイルとして保存されます。
ベースファイルを非表示にする場合は、メニューからView-Show/Hideで非表示にできます。
WinMergeとの比較
Windowsにおけるマージツールには有名どころだとWinMergeがありますが、P4MはWinMergeに比べると機能面で見劣りします。ディレクトリのdiffは取得できません。ファイル専用のmergeのツールと考えて導入したほうが良いです。