【记录】尝试把TFS中的文件比较工具改为Beyond Compare

【背景】

默认的TFS中文件比较,是其自己的:

tfs default compare with latest version

虽然基本够用,很明显,效果不是很好:

compare tab show diff not very good

现在希望去换成BeyondCompare,看看是否可行。

【折腾过程】

1.然后找了下,在配置中,有对应的配置:

preferences team team foundation server compare tools add

2.然后输入*表示处理所有文件,但是对于command,针对于此处的beyondCompare,如何写,暂时不清楚。

file type choose all but command how write

3.所以需要去:

参考之前,系统右键菜单中,对应的注册表项中的命令的写法。

所以去找注册表中,beyondCompare所添加的右键菜单。

然后找到,好像是这个:

HKEY_CLASSES_ROOT\BeyondCompare.SettingsPackage\shell\open\command

值是:

"D:\Program Files (x86)\Beyond Compare 3\BCompare.exe" "%1"

如图:

found HKEY_CLASSES_ROOT BeyondCompare.SettingsPackage shell open command value

所以,去试试,用命令:

"D:\Program Files (x86)\Beyond Compare 3\BCompare.exe" "%2" "%1"

如图:

set command to bcompare exe 2 1 see ok or not

added file type compare 2 1 using bcompare exe

然后去看看效果。

然后再去点击:

after set bc then retry compare with latest version

结果是:

的确会打开BeyondCompare去比较:

本地的tfs_root中的文件

在线的(下载后保存到local temp中)的文件

compare tfs root to local temp using bc

只不过,有点小问题:

其还是会去调用系统自带的那个文件比较工具:

still call default file diff tab

当然,基本已经达到目的了:

可以在Eclipse中的TFS插件中去调用BeyondCompare比较文件了。

4.再去测试测试:

Comprare with Workspace Version

continue try compare with workspace version

然后:

(1)发现之前是误判:

没有再去调用系统默认的diff,而是的确调用了当前的BeyondCompare。

是正常的。

(2)效果还是很不错的:

still can normal call bc to compare

 

至此:

真正实现了:

单个文件,去比较时

即在TFS中用

Comprare with Latest Version

Comprare with Workspace Version

时,都可以调用,我所设置的BeyondCompare,去比较文件了。

(而不用去调用TFS本身(还是Eclipse本身?)自带的那个file diff比较工具了)

 

【总结】

想要实现,在TFS中的单个文件比较:

Comprare with Latest Version

Comprare with Workspace Version

都用BeyondCompare,而不用自带的(不是很好用的)那个比较工具的话,可以去:

Window->Preferences->Team->Team Foundation Server->Compare Tool->Add

  • File Type:*
    • 表示所有文件都适用此规则,都调用BeyondCompare去比较
  • Command:
    "D:\Program Files (x86)\Beyond Compare 3\BCompare.exe" "%2" "%1"

即可。

注:

当前只是针对单个文件,对于文件夹级别的比较,暂时没设置。



发表评论

电子邮件地址不会被公开。 必填项已用*标注

无觅相关文章插件,快速提升流量