改变 Ankhsvn 的差异比较行为

5

我希望能够在任务栏中显示差异结果窗口,而不是作为 Visual Studio 浮动对话框项。这个可以实现吗?


1
根据 http://johnnycoder.com/blog/2008/07/22/getting-started-with-ankhsvn/(快速入门第3节)的内容,您可以通过工具 > 选项 > 源代码控制 > Subversion 来指定外部 diff 工具。但这对我来说并没有显示出来,但或许您会更幸运… - itowlson
对我来说,它在“工具”>“选项”>“源代码控制”>“Subversion用户工具”下面。 - Dan Is Fiddling By Firelight
只是一个小提示,要控制那些VS差异窗口是否浮动,在“Subversion用户工具”设置页面中,您可以勾选“创建Visual Studio Diff/Merge文档浮动”选项。禁用此选项可能会有问题,因为在某些情况下,差异窗口可能会被停靠在模态对话框的后面(例如当您从集成工具(如AnkhSvn)的提交窗口打开差异时),使其完全无法使用。 - Nyerguds
3个回答

7

前往 工具 > 选项 > 源代码控制 > Subversion 用户工具 查看支持的差异/合并工具。

下载您喜欢的合并工具(如果您还没有为其他目的下载)。 我最喜欢的是SourceGear DiffMerge。

再次进入配置页面,从下拉菜单中选择您的工具。 AnkhSvn会自动检测到它。


2

以下是关于Visual Studio 2008的信息。它未能在Win7x64上检测到我安装的64位Araxis。

外部差异工具:

 "$(HostProgramFiles)\Araxis\Araxis Merge\compare.exe" /max /wait  "$(Base)" "$(Mine)" /title1:"$(BaseName)" /title2:"$(MineName)"

我还没有尝试过在VS2010中使用。

这应该是合并的命令,但我还没有测试过:

"$(HostProgramFiles)\Araxis\Araxis Merge\compare.exe" /a2 /max /wait /3 /title1:"$(TheirName)" /title2:"$(BaseName)" /title3:"$(MineName)" "$(Theirs)" "$(Base)" "$(Mine)" "$(Merged)"

0

我更喜欢使用VS2010的差异合并工具。你可以轻松设置它来进行比较和合并。

对于外部差异工具:

"$(ProgramFiles)\Microsoft Visual Studio 10.0\Common7\IDE\diffmerge.exe" "$(Base)" "$(Mine)"

外部合并工具:

"$(ProgramFiles)\Microsoft Visual Studio 10.0\Common7\IDE\diffmerge.exe" /merge $(Theirs) $(Mine) $(Base) $(Merged)

幸运的是,它出现在任务栏上。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接