Version Control Integration
TeamCity integrates with a number of the most frequently used Version Control Systems, from which it obtains the source files to create your builds, and provides many useful features for customizing the VCS settings.
Tracking Changes
TeamCity constantly monitors the changes developers submit to Version Control and suggests several ways to view and track their status. You can:
- observe both actual changes that are already included in the build and pending changes

- navigate to the related issues in a bug tracking system
- navigate to the source code and view file diffs on the web
- take responsibility for a failed build, if your changes have caused a build failure
The My Changes page shows the list of builds that contain changes, committed by the developer that are already included in builds.
File Diffs on the Web
View file differences on the web just like in the IDE and navigate to the project source base from the web.
VCS Triggering Possibilities
TeamCity constantly scans all of the build configurations' VCS roots and triggers builds if changes are found. You can also configure rules that prevent build triggering when:
You can also use a special syntax which will allow you to ignore changes:
- changes are submitted to certain parts of the VCS roots (e.g. src/help)
- certain types of files are checked in (e.g. **.html)
- check ins performed by particular users
You can also use a special syntax which will allow you to ignore changes.
You can now set the "quiet period" — the amount of time that must pass before Team City will start the build when nothing was committed to the VCS roots of the particular build configuration.

VCS Labeling
TeamCity can optionally add a label into Version Control for the sources used for a particular build. You can choose to apply the VCS label for all builds or only for successful ones.
In addition to automatic build labeling, you can also manually label the sources used for a build by clicking the Label this build sources link of the Build Results page.
TeamCity has integrated labeling for the following Version Control Systems:
- IBM Rational ClearCase (Base and UCM)
- CVS
- Perfore
- Borland StarTeam
- Subversion

Customizable Checkout Rules
VCS Checkout Rules allow you to exclude and map paths (copy directories and all their contents) to a different location on the Build Agent during the checkout process.
Shareable VCS Configurations
To provide more a flexible means of configuring projects and using project VCS settings, TeamCity can now makes the same VCS roots available for different projects by sharing them. TeamCity always monitors changes made to shared VCS roots so your changes won't disturb other projects.




