We’re happy to tell you that TeamCity 7.1 is officially released! If you were following the early access program, you may have noticed that in this release we were mostly focusing on enhancing support for distributed version control systems, such as Git and Mercurial, making the daily work with branches smooth, clear and easy. So give a warm welcome to Feature Branches in TeamCity and check them out!
As you know, Feature Branches in DVCSs like Git and Mercurial allow you to work on a feature independently from the repository and commit all the changes for the feature onto the branch, merging the changes back when your feature is complete. This approach brings a number of advantages to software development teams, however in continuous integration servers that do not have dedicated support for it, it also causes a number of problems, like constant build configurations duplication, poor visibility and in the end loss of control of the process.
Our main idea was to make development and building in branches as simple as possible. Ideally, all you would have to do is to push your branch to a Git or Mercurial repository and TeamCity would detect it and start a build on your changes. And this is how it actually works in TeamCity 7.1! You need to make only one tiny change in your build configuration – let TeamCity know which branches you want it to monitor.
So, here are some highlights:
- Once a change is detected in a branch, TeamCity will start a build in this branch.
- All the builds from branches are marked with branch labels to distinguish them from one another.
- In various places in TeamCity UI you can filter builds by branch label: filter all build configurations of a single project, or history, change log, issue log and pending changes for a specific build configuration.
- Get a bird’s-eye view on the status of active branches in a build configuration on the dedicated page.
- Run custom builds for specific branches.
- Use all regular TeamCity smart features such as quiet period, per-checkin triggering, dependencies, notifications, new failing tests detection, and so on with DVCS branches!
There’s a lot more to this huge feature, because it relates to many aspects of continuous integration experience, so please make sure to read the release notes to get the full taste of all the goodies we brought to you in this build.
In addition to all that we have also made a number of improvements in different areas:
- Current problems are now shown for collapsed configurations.
- Sticky investigation: the right way to investigate flickering tests.
- Version Control Repository browser: use a tree view to choose a file in the repository instead of typing or pasting the path.
- NTLM HTTP authentication is supported.
- Manually mark build as successful or failed.
- More options to control build steps execution.
- Checkout on label in Perforce integration.
- Bundled Xcode runner.
- Amazon EC2 EBS-based instances support.
- and much more….