我们使用 TFS 作为版本控制。目前,项目管理是通过我们本地的 PMS 应用程序完成的。我们有一个要求,例如当团队成员 checkin 项目时,显示用于输入任务详细信息的自定义对话框并更新我们的本地 pms 数据库。我想显示一个自定义对话框,在调用 checkin 命令之后和/或之后。还要确保只有通过这个自定义对话框成功提交了任务详细信息,我们才能 checkin 项目。

最佳答案

创建您自己的 checkin 策略

您可以通过登记政策来做到这一点。 Check out my blog post on interacting with the user on check-in 。基本技巧是引发用户可以单击的 checkin 警告,在单击事件上,您可以向用户显示 UI 并使用标准的 Windows 窗体功能与您的系统进行交互。

basic example code can be found in this StackOverflow question

My multiple Branch policy uses this trick 要求用户确认用户是否真的想同时将代码 checkin 到多个分支,而不必使用绕过策略验证复选框。

关于安装 Checkin 策略的说明

将 Team 项目配置为使用 checkin 策略后,如果 checkin 时机器上未安装该策略,Visual Studio 会报错。没有简单的方法来分发 checkin 策略以确保每个用户都在他们的机器上安装了它,或者会自动从 TFS 安装它。

在您的 checkin 策略中,您可以通过 IPolicyDefinition.InstallationInstructions 提供策略包位置的 URI。该包可以是 .msi.vsix 或只是一个带有脚本的 zip 文件,用于复制程序集并添加所需的注册表项。 Visual Studio 不关心您选择的方法。如果您的公司 hosts their own Visual Studio gallery ,它也可以指向那里的下载位置。

如果您选择 .msi,则可以通过组织中可能可用的现有配置工具分发它们。

未安装该策略的客户端将在 checkin 时自动触发警告,只能通过选中“绕过 checkin 策略”复选框来解除该警告。该权限可以撤销,要求所有用户正确设置他们的机器。

还有一种分发 checkin 策略的方法, which is through the Visual Studio Power tools 。通过 checkin 特定文件夹中源代码管理中的策略并告诉 Power Tools 下载自定义二进制文件(工作项控件和 checkin 策略),它们将被自动安装。由于这些工具不是默认安装的,也不是默认配置的,它们需要大约相同的工作量才能使此方案适合您。

关于visual-studio - TFS 客户端 Hook ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25801982/

10-13 05:22