Windows 7 で TFS 2012 を Matlab のソース管理プロバイダーとして使用して調査しています。これには、VS 2012 シェル/TFS クライアントと、Microsoft から無料でダウンロードできる 64 ビット MSSCCI プロバイダーをインストールする必要があります。私はこれをすべて設定しましたが、問題なく動作します。
ただし、ファイルの差分とマージには問題があります。VS 2012 ソース管理エクスプローラーとの違いを表示すると、VS 2012 Diff ツールが正しく実行されます。Matlab 内から (ソース管理メニューを使用して) 同じ操作を試みると、「構成されたツールを実行できません」というエラーが表示されます。競合を解決するときに、「マージ ツールの変更をマージする」ボタンでも同じことが起こります。VS 2012 では機能しますが、Matlab では機能しません。
これは、少なくとも TFS を駆動しようとする他のツールでは既知の問題のようです。外部差分ユーティリティを使用するように VS 2012 を構成するという回避策があります。私はこれを試してみましたが、うまくいきました。さらに、外部差分ユーティリティを VS 2012 独自の「内部」差分ツールとして構成すると、内部ツールが Matlab から正しく呼び出されることがわかりました。
差分コマンドは次のとおりです。
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe
必要な引数は次のとおりです。
/Diff %1 %2 %6 %7
(つまり、元のファイル、変更されたファイル、元のファイル ラベル、変更されたファイル ラベル)。これに関するドキュメントはこちらにあります。
マージ ツールはさらに問題があります。コマンドラインに関する特定のドキュメントが見つかりません。私がこれまでに得た最も近いものは
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\vsDiffMerge.exe
私はかなり正しいと確信していますが、私が使用している引数は
%1 %2 %1 %2 %3 %4 /m
ファイル ラベルが異なり、差分表示の形式が (通常の組み込みツールとは) 異なります。このコマンド ラインは、こちらの git 関連のドキュメントからリバース エンジニアリングしましたが、git については何も知りませんし、イタリア語も話せません。使用する正しいコマンドラインオプションを見つけるのを手伝ってくれる人はいますか?
編集して追加
この問題に関連していると思われる MSDN ディスカッションがここにあります。他のツールで発生しているようで、Matlab に限定されていません: それに応じてこの質問にタグを付け直しました
編集して追加
Diff 機能の推奨コマンドラインは次のとおりです。
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\vsDiffMerge.exe
コマンドライン引数は次のとおりです。
/t %1 %2 %6 %7
マージ機能に相当するものは機能しません。これは内部バグであり、Microsoft はこれを認めています。