George Santayana once said: "Those who cannot learn from history are doomed to repeat it." We believe that keeping a history of builds, changes and failures is crucial to the success of any software development process.
TeamCity stores a lot of information about a build to help you to identify the roots causes of problems faster and access the related results easily.
TeamCity keeps data about build changes, parameters, produced artifacts, statistics metrics, and much more.
Comprehensive statistics reports
With statistical trends you can track the condition of your projects over time.
The visual graphs include information about all the builds of a certain build configuration across all its history.
You can create your own statistics graphs based on your own statistics values.
Starting from TeamCity 9.0 you can easily create and modify custom charts using the TeamCity Web UI for a project or build configurations statistics, as well as for Reported statistic values on the build results page.
You can run a build with source code corresponding to any past change (not taking later changes).
This helps you identify which change caused build failure and produce a build even if someone has just submitted broken code to the repository.
Build Pins, Tags and Comments
Build tagging is a nice way to organize your builds and quickly filter builds in the build history. You can apply one or several tags to a single build, and then search for builds marked with these tags.
You can also leave a comment on a specific build or pin it to prevent build artifacts from cleaning.
To easily access builds you want to monitor, you can mark them as "favorite". Optionally, any manually triggered build can be added to favorites automatically. The marked builds will be listed on the My Favorite Builds page available in your user profile.
Each test in TeamCity has its own history. This history can be observed and can help find the change that broke the test.
For each test, you can also see a graph which shows how test duration changes from build to build.
The change log accumulates the list of pending changes, and the changes already included in the builds of the selected build configuration.
You can view changes between specific builds, or filter them in various ways.