|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.|
Team Foundation Check-Out Settings
Team Foundation version control supports two check-out settings. The settings determine how the check-out operation works. You can configure the check-out operation to check out the local version in your workspace. Another option is to configure the check-out operation to first get the latest version of items into your workspace, and then check them out. The latter configuration is similar to Visual SourceSafe behavior.
The default check-out behavior for Team Foundation version control checks out the local version of items in your workspace. Even if a new version of the item exists on the server, Team Foundation version control does not get that version.
This check-out behavior is useful when you perform a get operation to retrieve a set of files. Typically, the configuration of version-controlled files on your computer represents a point-in-time snapshot of specific files—files that are known to work together—from Team Foundation version control. Therefore, they can be built and tested together.
As a developer working in a workspace, you are isolated from the changes made by other developers. It is within your control to accept changes from other developers by performing a get operation, as appropriate. In ideal circumstances, when you do this you will update the entire configuration of version-controlled files, and not just one or two files. The reason for this is that changes in one file typically depend on corresponding changes to other files. This check-out setting ensures that you always have a consistent snapshot of files that can be built and tested.
When you check in your changes, Team Foundation will give you the option to merge your changes with any changes that were made on the server version. You will be prompted with the resolve conflicts dialog box if any conflicts are detected.
You can also configure the check-out behavior to get the latest version, or tip, of an item every time you check it out. This behavior is the same as Visual SourceSafe. If you are a developer used to working with the Visual SourceSafe check-out model, you will find this setting more familiar.
When the check-out setting is configured to get latest, Team Foundation version control first gets the latest version of the items from the server into your workspace. Then the items are checked out.
You can configure the check-out settings for the team project, or for just your computer. When you configure the check-out settings for a team project, you are configuring the default behavior for all developers using that team project. For more information on configuring check-out settings for a team project, see How to: Configure Check-Out Settings.
You can also configure the check-out settings on your computer. This affects the check-out behavior for your computer, but it does not alter the check-out behavior for any other team member. For more information on configuring check-out settings for your computer, see How to: Enable Team Foundation Version Control to Get the Latest Files on Check-Out.
The default check-out behavior for a team project can also be configured in the process template. For more information, see Version Control Process Template Plug-in.