TortoiseSVN Logo

如何将 TortoiseSVN 集成到 Visual Studio 中

发布于 2012年12月10日

广告

如果您正在使用 Visual Studio,您可以将 TortoiseSVN 命令集成到各种上下文菜单中。 当然,Visual Studio 也有 Subversion 插件,例如 AnkhSVNVisualSVN,后者已在其许多 UI 中使用 TortoiseSVN。 这些插件还具有一个优势,即当您进行重构时,它们会自动在 SVN 中记录重命名和移动。

第一步是将 TortoiseSVN 命令添加为外部工具,在菜单工具->外部工具... 下。

VS_externaltools

添加命令名称、TortoiseProc.exe 的路径,然后添加命令的参数。

在需要的地方使用 VS 变量。 由于我将命令添加到打开的文件选项卡的上下文菜单中,因此这是我使用的参数

  • /command:blame /path:"$(ItemPath)" /line:$(CurLine) /startrev:1 /endrev:HEAD
  • /command:diff /path:"$(ItemPath)"
  • /command:log /path:"$(ItemPath)"

请注意 /line: 参数:这将使 TortoiseBlame 自动滚动到光标在 Visual Studio 中打开的文件中所在的同一行。 如果您省略 blame 命令的 /startrev/endrev 参数,则首先会显示一个对话框,您可以在其中为 blame 指定更多选项。

现在要将这些新命令添加到文件选项卡上下文菜单,请转到工具->自定义...,选择命令选项卡,单击单选按钮上下文菜单,然后选择其他上下文菜单 | Easy MDI 文档窗口

VS_customize

注意:您可能需要首先在 VisualStudio 中打开一个文档,然后右键单击选项卡标题以显示上下文菜单。 否则,Easy MDI 文档窗口上下文菜单不会显示在自定义对话框中。

然后单击添加命令... 按钮

VS_addcommand

现在您必须选择命令。 问题是自定义命令不会显示其标题,而仅显示为外部命令 X,其中 X 是外部命令的编号。

在我的例子中,命令编号为 9-11,您可能需要在此处进行一些试错。 只需添加您认为是要添加的命令,然后检查正确的命令是否显示在上下文菜单中。

这就是打开的文件选项卡的上下文菜单的样子

VS_contextmenu