比較とマージに MATLAB を使用するための外部ソース管理のカスタマイズ
比較とマージに MATLAB® 比較ツールを使用するために外部のソース管理ツールをカスタマイズできます。ライブ スクリプト、MAT ファイル、SLX ファイル、MDL ファイルなどの MATLAB ファイルをソース管理ツールから比較する場合、MATLAB 比較ツールを開くようにソース管理ツールを構成できます。サポートされているファイルのより詳細なリストについては、visdiff
を参照してください。MATLAB 比較ツールには、MathWorks® ファイルをマージするためのツールが用意されており、一般的なソフトウェア構成管理システムやバージョン管理システムと互換性があります。この自動マージツールを Git™ と共に使用して、同じ SLX ファイル内に異なるサブシステムの変更を含むブランチを自動的にマージできます。
MATLAB を比較とマージ用のアプリケーションとして使用するようにソース管理ツールを設定するには、まず mlDiff
、mlMerge
および mlAutoMerge
の実行可能ファイルの絶対パスを特定してから、使用しているソース管理ツールの推奨手順に従わなければなりません。
MATLAB による比較、マージおよび自動マージのための絶対パスの検出
必要なファイル パスを取得して、開いている MATLAB セッションを外部のソース管理ツールが再利用できるようにするには、MATLAB で次のコマンドを実行します。
comparisons.ExternalSCMLink.setup()
このコマンドは、[比較] の下にある [比較とマージのために、開いている MATLAB セッションの、外部ソース管理ツールによる使用を許可する] という MATLAB 基本設定を設定します。
このコマンドでは、コピーしてソース管理ツール設定に貼り付けられるファイル パスも表示されます。
Windows® の場合:
Diff: matlabroot\bin\win64\mlDiff.exe
Merge: matlabroot\bin\win64\mlMerge.exe
AutoMerge: matlabroot\bin\win64\mlAutoMerge.bat
Linux® の場合:
Diff: matlabroot/bin/glnxa64/mlDiff
Merge: matlabroot/bin/glnxa64/mlMerge
AutoMerge: matlabroot/bin/glnxa64/mlAutoMerge
Mac の場合:
Diff: matlabroot/bin/maci64/mlDiff
Merge: matlabroot/bin/maci64/mlMerge
AutoMerge: matlabroot/bin/maci64/mlAutoMerge
matlabroot
は、インストール場所の絶対パスに置き換えます。たとえば、C:\Program Files\MATLAB\R2020b
です。
メモ
比較とマージの操作では、利用できる場合は開いている MATLAB セッションを使用し、必要なときにのみ MATLAB を開きます。この操作では、指定された MATLAB インストールのみを使用します。
Git との統合
SVN との統合
TortoiseSVN
TortoiseSVN を使用すると、比較ツールとマージ ツールをファイル拡張子に基づいてカスタマイズできます。たとえば、SLX ファイルに対して MATLAB の比較ツールとマージ ツールを使用するには、次を行います。
任意のファイル エクスプローラーウィンドウを右クリックし、[TortoiseSVN] 、 [Settings] を選択して TortoiseSVN の設定を開きます。
[Settings] サイドバーで、[Diff Viewer] を選択します。[Advanced] をクリックして、ファイル拡張子に基づいて比較アプリケーションを指定します。
[Add] をクリックし、フィールドに拡張子と
mlDiff
実行可能ファイルのパスを入力します。Filename, extension or mime-type: .slx External Program: "C:\Program Files\MATLAB\R2020b\bin\win64\mlDiff.exe" %base %mine
[OK] をクリックし、同じ手順を繰り返して別のファイル拡張子を追加します。
[Settings] サイドバーで、[Diff Viewer]、[Merge Tool] を選択します。[Advanced] をクリックして、ファイル拡張子に基づいてマージ アプリケーションを指定します。
[Add] をクリックし、フィールドに拡張子と
mlMerge
実行可能ファイルのパスを入力します。Filename, extension or mime-type: .slx External Program: "C:\Program Files\MATLAB\R2020b\bin\win64\mlMerge.exe" %base %mine %theirs %merged
[OK] をクリックし、同じ手順を繰り返して別のファイル拡張子を追加します。
これで、MATLAB の比較ツールとマージ ツールを、TortoiseSVN の既定の比較アプリケーションとマージ アプリケーションと同様に使用できます。
メモ
SVN を使用して SLX ファイルなどのバイナリ ファイルを自動マージすることはサポートされていません。
その他のソース管理ツールとの統合
Perforce P4V
Perforce® P4V を使用すると、比較ツールとマージ ツールをファイル拡張子に基づいてカスタマイズできます。たとえば、SLX ファイルに対して MATLAB の比較ツールとマージ ツールを使用するには、次を行います。
Perforce で、[Edit] 、 [Preferences] をクリックします。
[Preferences] サイドバーで、[Diff] を選択します。[Specify diff application by extension (overrides default)] の下で、[Add] をクリックします。
[Add File Type] ダイアログ ボックスに、次の情報を入力します。
Extension:
.slx
Application: C:\Program Files\MATLAB\R2020b\bin\win64\mlDiff.exe Arguments: %1 %2[Save] をクリックします。
[Preferences] サイドバーで、[Merge] を選択します。[Specify merge application by extension (overrides default)] の下で、[Add] をクリックします。
[Add File Type] ダイアログ ボックスに、次の情報を入力します。
Extension:
.slx
Application: C:\Program Files\MATLAB\R2020b\bin\win64\mlMerge.exe Arguments: %b %2 %1 %r[Save] をクリックし、他のファイル拡張子に関して手順を繰り返します。
ヒント
mlDiff
および mlMerge
の実行可能ファイルの絶対パスを、使用しているMATLAB インストールとオペレーティング システムの両方に一致するようにカスタマイズします。詳細については、MATLAB による比較、マージおよび自動マージのための絶対パスの検出を参照してください。
これで、MATLAB の比較ツールとマージ ツールを、Perforce の既定の比較アプリケーションとマージ アプリケーションと同様に使用できます。
関連するトピック
- ファイルやフォルダーの比較とファイルのマージ
- モデルの自動マージ (Simulink)
- 要件セットとリンク セットの 3-way 自動マージ ソリューション (Requirements Toolbox)
- MAT ファイルの比較とマージ
- 比較レポートからの Simulink モデルのマージ (Simulink)