26.04.2015 Views

Team Development with Visual Studio Team Foundation Server

Team Development with Visual Studio Team Foundation Server

Team Development with Visual Studio Team Foundation Server

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

• External adopters.<br />

Use the following steps to create a scheduled build:<br />

1. Create a batch file <strong>with</strong> a command line build.<br />

2. Use Windows Scheduled Tasks to execute the batch file on a schedule.<br />

For more information, see “Chapter 9 - Setting Up Scheduled Builds <strong>with</strong> <strong>Team</strong> Build.”<br />

Continuous Integration Build<br />

A continuous integration build is triggered any time a check-in occurs. The purpose of a<br />

continuous integration build is to gain rapid feedback about build quality as soon after a<br />

check-in as possible. <strong>Development</strong> teams are typically the consumers of a continuous<br />

integration builds.<br />

Depending on the size of your team, the length of your build, and the number of checkins,<br />

choose one of the following strategies:<br />

1. Continuous integration build immediately following each check-in.<br />

2. Rolling build after a specified number of check-ins, or a specified time period<br />

(whichever comes first).<br />

For more information, see “Chapter 8 - Setting Up Continuous Integration <strong>with</strong> <strong>Team</strong><br />

Build.”<br />

Gated Check-ins<br />

Gated check-ins is a process that requires each check-in to meet some quality standard<br />

before it can be added to the source tree. The purpose of a gated check-in is to reduce the<br />

number of build breaks and improve the quality of the build by requiring that each checkin<br />

be run through a set of tests before it can be admitted.<br />

Understand Common Stumbling Blocks<br />

There are several common scenarios that <strong>Team</strong> Build does not fully support by default.<br />

Review the following scenarios and consider whether your team is likely to face any of<br />

them:<br />

• Building a project <strong>with</strong> external dependencies. If you use branching to bring<br />

external dependencies into your team project, you can use project references and the<br />

build will work on the build server <strong>with</strong>out any additional steps. If you use client-side<br />

workspace mapping to reference external dependencies, you need to maintain the<br />

mapping on the build server in order for the build to complete successfully. For more<br />

information, see “Chapter 6 – Managing Source Control Dependencies in <strong>Visual</strong><br />

<strong>Studio</strong> <strong>Team</strong> System.”<br />

• Building a setup project. <strong>Team</strong> Build does not support setup projects by default. Use<br />

a custom post-build step to compile the setup project and copy the binaries to the<br />

build drop location. For more information, see “Walkthrough: Configuring <strong>Team</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!