|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.|
Essentials for a Check-in Policy Plug-in Extensibility
The check-in policy in Team Foundation Server version control is an extensible mechanism for validating compliance with organizational rules during the check-in process. Team Foundation Server version control implements this feature with the check-in policy framework. This is a programming interface that is exposed by the Team Foundation Server version control client. You can create a check-in policy plug-in that enables you to have your own validation rules for a check-in. Also, it provides the logic for evaluating rules during the check-in process.
A check-in policy plug-in can provide a user interface for defining rules about the types of changes that are allowed and not allowed. Also, it provides the logic for evaluating the rules during the check-in process.
The check-in policy framework is not a security mechanism. An end user can override policies in the user interface. Team Foundation Version Control provides the policy framework to make available and enforce guidelines in the client about the processes that your developers should follow before they submit new code to the server.
The check-in policy framework does not provide a deployment mechanism for your new plug-in. It is your decision whether to install any new plug-in and any required supporting software. Installation typically occurs during the standard installation process. In place of a deployment mechanism, the check-in policy framework in Team Foundation Server can pass a URL to the client's computer. This URL can direct the user to information on installing the policy plug-in.
If you define the check-in policies, you are then responsible for guaranteeing that your development team has access to the tools for evaluating the policy during the check-in process.