Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

一度使ったら手放せない! かゆいところに手が届くマージツールの決定版「Araxis Merge」とは?

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2018/08/20 14:00

 ソフトウェア開発の現場ではソースコードの大規模、複雑化の一途をたどっている。そのような開発現場ではチームで開発することが一般的だ。しかしチーム開発においてやっかいなのが、修正箇所がコンフリクトしたり不整合が起こったりすること。それを比較してマージする際に、手戻りが発生するなどして作業時間が大幅にかかってしまうといった経験をした方も多いのではないだろうか。そのようなチーム開発における非生産的な作業を効率化するのが、マージツール「Araxis Merge」だ。

転職先でも使い続けたい声多数!「Araxis Merge」とは?

 「Araxis Merge」は高度な2者間および3者間のファイル比較、マージ、およびフォルダ同期を行うツールだ。主な機能はファイルに含まれるテキストデータを比較して、差分の抽出と統合を実行すること。フォルダごと比較することも可能で、主なユーザーはソフトウェア開発者だ。

Araxis Merge
Araxis Merge

 Araxis Mergeでは、差分を一文字単位で可視化することができ、複数行にわたっての変更も分かりやすく図示される。マージ操作もAraxis Merge上で直感的に行うことが可能だ。

 「大規模プロダクトの開発現場を中心に、さまざまな業種で活用いただいています」と同ツールを日本国内で独占販売しているエージーテックにおいて、プロダクトマネージャーを務める野崎さおり氏は語る。

 エージーテックは1984年に設立されて以来、海外で開発された有用なパッケージソフトウェアをローカライズして国内に提供している。主力製品は組み込み用データベース「Actian Zen」。そのほかにも難読化ツールとして、JavaやAndroid開発者向けの「DashO」や.NET開発環境向けの「Dotfuscator」などを提供している。

 Araxis Mergeは特に新しい製品というわけではない。エージーテックが販売開始したのは2000年9月。「2017年までに2万ライセンスを販売している」と野崎氏は語る。

 「ユーザーの中で最も多いのは自動車・自動車関連産業のお客さまです。そのほか金融システム系、重電系、保険、翻訳、印刷・出版業で使われています。自動車業界の中には、数千ライセンスを導入していただいている企業もあります」(野崎氏)

 一度使えば、「転職先で導入したい」という方も数多くいるほどのコアなファンのいるAraxis Merge。野崎氏は「触ってもらえば製品の良さを実感してもらえるのに、なかなか届いていないのが現状」と話す。

Araxis Mergeが提供する機能

 Araxis Mergeとはどんな製品なのか。主な機能は次の通り。

  • テキストの比較とマージ
  • フォルダ比較
  • イメージファイルおよびバイナリファイルの比較
  • 2通りの比較結果の保存(レポート、保存)
  • 構成管理(バージョン管理)システム、Time Machine、およびFTPサイトへの直接アクセス

 Araxis Mergeはスタンダード版とプロフェッショナル版の2種類が用意されているが、その違いはスタンダード版が2者間比較なのに対して、プロフェッショナル版は3者間比較と自動マージ機能がついていること。自動マージ機能は新しいクラスを元のファイルに付け加えるなど、差異のあるファイルを追加させるようなときに便利に使える機能だ。

オープンソースにはないAraxis Mergeの優れた特徴

 Windows環境にはオープンソースのマージツールWinMergeも存在するが、Araxis Mergeには、WinMergeと比べて、かゆいところに手が届く優れた特徴がある。

Windows、Mac両対応

 第一にWindowsでもMacでも使えること。「1本のシリアルで2台まで利用可能なので、1台はWindows、もう一台はMacで利用するということも可能です」(野崎氏)

シンプルで見やすいUI

 第二にシンプルな操作画面で見やすいことだ。

Araxis MergeとWinMergeの画面の比較
Araxis MergeとWinMergeの画面の比較

 一見してわかるとおり、Araxis Mergeは目に優しい配色になっている。また「見やすい色づけで差分指摘ができるよう、色やフォントをカスタマイズできるようになっている」と野崎氏は説明する。

 また直感的な操作で編集作業ができるのも同ツールの特徴だ。画面は、Officeツールでよく見かけるリボンUIのような見た目で、初めてでも違和感なく操作できるようになっている。また開発者にとって嬉しいショートカットも多数用意されており、「誰もが簡単に使えるようにつくられている」と野崎氏は言う。実は同ツールは、翻訳会社、保険会社・保険代理店のなどの書類やテキスト比較のために、ソフトウェア開発者以外にも大いに活用されているのだ。

充実したレポート機能

 第三の特徴はレポート機能が充実していることだ。「フォルダ比較の結果をまるごとHTMLのレポートとして出力することができるので、ブラウザさえあれば誰とでも共有できます。また比較結果の統計情報もついているので、便利に使えます」(野崎氏)

フォルダ比較のレポート画面
フォルダ比較のレポート画面

 レポート機能は、コードレビューや履歴管理、修正結果をステークホルダーに提出する際に活用できる。

豊富なオプション

 第四は、ニーズに応えるオプション設定が充実していることだ。「お客さまからのニーズからできた機能がオプションとして追加されることもあります。今年4月にリリースされた最新バージョンでは、『正規表現の活用』『挿入部分の比較対象画面でのパディング』『差分指摘精度の調整』などのオプションが追加されました」(野崎氏)

 オプションの「差分指摘精度の調整」とは、例えばあるソースコードの行で1文字だけが違うという場合、その文字を指摘するのではなく、行単位、もしくはブロック単位で指摘するという設定を選べるという機能だ。このオプションを選択すると、数万行のソースコードでも、差分比較のパフォーマンスが向上する。

 同ツールではこのようなマイナーアップデートを年2~3回程度行っており、「アップデートさえすれば、常に最新の状態で使うことができる」と野崎氏は語る。

Araxis Mergeの体験版はこちらから!

 Araxis Mergeは30日間無料で全機能をお試しいただけます。以下のリンクからダウンロード可能です。

ステークホルダーの多いプロジェクトにおすすめ、Araxis Mergeのレポート機能

 Araxis Mergeは、具体的にどのようなシーンで活用するとより効果を発揮するのか。例えば画面A、画面B、画面C、画面D、帳票A、画面Bという6つのソースコードの修正を外部の協力会社3社に委託するケースを考えてみる。

Araxis Mergeの活用シーン
Araxis Mergeの活用シーン

 A社には画面Aと画面B、B社には画面Cと画面D、C社には帳票Aと帳票B。依頼主である本プロジェクトのPMやSEは仕様通りに変更されているか、ソースコードレベルで検証したいと思っているはずだ。

 従来、検証方法としては、目視で行うか、委託先の報告書を見るなどがあった。前者は見落とす可能性や作業効率の悪さがあり、後者は委託先に依存するため漏れがあったり、レポートの作り方によっては作業効率が落ちたりするなど問題があった。

 「この問題を解決するのが、Araxis Mergeのレポート出力機能だ」とエージーテックにおいて製品サポートを担当する伊藤友恒氏は熱く語る。WinMergeもレポート出力はできる。しかしAraxis Mergeと比較すると、次の表の通り作業性能は一目瞭然だ。

Araxis MergeとWinMergeにおけるレポート出力機能の違い
プロダクト名 レポートの概要表示 修正ファイルのアクセス 修正ファイル以外のアクセス
Araxis Merge
WinMerge × ×

 Araxis Mergeのレポート機能を使えば、レポートの概要ページから全体像の把握でできるため、優先順位を決めてから検証ができる。しかも修正されたファイルの修正箇所にピンポイントでアクセスできるため、作業効率が上がり、漏れなく確認できるというわけだ。「もちろん、Araxis Mergeであれば、修正していないところも出力、検証できます」(伊藤氏)

Araxis Mergeでは、WinMergeとは異なり比較の概要をレポートすることができる。
どのファイルを程度修正されているかなどを簡単に掴むことが可能だ。
比較の詳細画面(左:Araxis Merge、右:WinMerge) 比較の詳細画面(左:Araxis Merge、右:WinMerge)
比較の詳細画面(左:Araxis Merge、右:WinMerge)

 委託先でもAraxis Mergeは有効に活用できる。サーバファイルとの差分を更新する必要があるが、まれに同時に更新してしまうこともある。そういうコンフリクト部分を正確に認識させて反映させたり、各担当者にコンフリクト部分を知らせたりすることができるからだ。

 「コードレビューする場合にも活用できる」と伊藤氏。Android StudioやVisual Studioなどで開発をする場合、階層構造が複雑になる。「Araxis Mergeであれば、ファイルを階層ごとにクリックすることなく、すぐに目的のファイルにたどり着くことができます」(伊藤氏)

フォルダ比較画面
フォルダ比較画面

 Gitとの連携も気になるところだ。Araxis Mergeでは「Gitファイルシステムプラグイン」を提供し、Gitのファイル比較およびマージ操作にAraxis Mergeを利用することができる。プラグインでは、ローカルのGitリポジトリに対して、読み出し専用のアクセスを提供し、Araxis Mergeで差分を確認した後、Gitを使用してファイルを開き、編集するという流れだ。

 Gitの他にも、Subversion、Visual Studio Team Foundation、IntelliJ IDEAなどのさまざまなソースコード管理、構成管理ツールとの連携が可能だ。

 Araxis Mergeを活用するメリットは、先のような特徴を享受できるだけではない。

 「製品購入から約1年間、最新版のソフトウェアをダウンロードするメンテナンスサポートが付いています。定期的な機能強化や不具合対応を行っている点が、商用版を購入する最大のメリットだと思います。もちろん、当社の技術スタッフによるテクニカルサポートも用意しています」(野崎氏)

 すべての機能が試せる評価版は、メールアドレスの登録だけで簡単に手に入れることができる。

 「評価版は30日間という期間限定ですが、プロフェッショナル版も含めてすべての機能が使えます。一度使っていただければその良さを実感できる自慢のツール。ぜひ使ってみて、その良さを実感していただけると嬉しいです」(野崎氏)

 「レポート出力はファイル比較だけではなく、履歴管理もできるので非常に便利な機能です。何か起こったときのレポート出力は使える。どんな業種・業界を問わず、あらゆる場所で活用していただき、開発生産性向上に寄与できると嬉しいです」(伊藤氏)

Araxis Mergeの体験版はこちらから!

 Araxis Mergeは30日間無料で全機能をお試しいただけます。以下のリンクからダウンロード可能です。

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 中村 仁美(ナカムラ ヒトミ)

     大阪府出身。教育大学卒。大学時代は臨床心理学を専攻。大手化学メーカー、日経BP社、ITに特化したコンテンツサービス&プロモーション会社を経て、2002年、フリーランス編集&ライターとして独立。現在はIT、キャリアというテーマを中心に活動中。IT記者会所属。趣味は読書、ドライブ、城探訪(日本の城)。...

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5