Max*_*Max 5 tfs visual-studio-2012 tfs2012
我正在调查在Windows 7上使用TFS 2012作为Matlab的源代码控制提供程序.这需要安装VS 2012 shell/TFS客户端,以及可从Microsoft免费下载的64位MSSCCI提供程序.我把所有这些都设置好了,它运作正常.
但是,文件差异和合并存在问题.如果我查看与VS 2012 Source Control Explorer的差异,则VS 2012 Diff工具可以正常运行.如果我在Matlab中尝试相同的操作(使用Source Control菜单),我会收到错误"无法执行已配置的工具".在解决冲突时,"合并工具中的合并更改"按钮会发生同样的事情:在VS 2012中,它起作用,来自Matlab,它没有.
看来这是一个已知问题,至少与其他试图驱动TFS的工具有关.有一种解决方法,即配置VS 2012以使用外部差异实用程序.我试过这个并且它有效.此外,我发现如果将外部差分实用程序配置为VS 2012自己的"内部"差异工具,则可以从Matlab正确调用内部工具.
diff命令是:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe
Run Code Online (Sandbox Code Playgroud)
并且所需的参数是:
/Diff %1 %2 %6 %7
Run Code Online (Sandbox Code Playgroud)
(即原始文件,修改文件,原始文件标签,修改后的文件标签).有这个文件在这里.
合并工具更成问题.我在命令行上找不到任何特定的文档.我到目前为止最接近的是
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\vsDiffMerge.exe
Run Code Online (Sandbox Code Playgroud)
我很确定这是正确的,但我正在使用的论点
%1 %2 %1 %2 %3 %4 /m
Run Code Online (Sandbox Code Playgroud)
不太正确 - 文件标签不同,差异显示格式不同(来自普通的内置工具).我在这里从一些与git相关的文档中反向设计了这个命令行,但我对git一无所知,也不会说意大利语.有人可以帮我找到正确的命令行选项吗?
编辑添加
有一个MSDN讨论,这似乎是与此相关的问题在这里.看起来它与其他工具一起发生并且不仅限于Matlab:我已经相应地重新标记了这个问题
编辑添加
Diff功能的首选命令行是:
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\vsDiffMerge.exe
Run Code Online (Sandbox Code Playgroud)
和命令行参数是:
/t %1 %2 %6 %7
Run Code Online (Sandbox Code Playgroud)
Merge功能的等效功能不起作用:这是一个内部错误,Microsoft已经承认了这一点.
vsDiffMerge.exe工具似乎适用于diffing和三向合并.我成功地将VS差异/合并工具与Perforce客户端集成,以进行合并和集成.
提供给工具的参数(至少对于Perforce)是:
DIFF
vsDiffMerge.exe /t %1 %2
Run Code Online (Sandbox Code Playgroud)
哪里:
合并:
vsDiffMerge.exe /m %1 %2 %b %r
Run Code Online (Sandbox Code Playgroud)
哪里:
注意:"%"解释来自Perfore文档:http://www.perforce.com/perforce/doc.current/manuals/p4v/Configuring_display_preferences.html#Diff
编辑:对不起大家,我不知道我是如何混合那个的.Mark Sowul今天的测试完全正确.我已经解决了我的问题.此外,对于第一条评论发布后没有得到纠正的道歉.我刚从海外旅行回到家.
| 归档时间: |
|
| 查看次数: |
7297 次 |
| 最近记录: |