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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Merging across the branch hierarchy is especially difficult and requires you to manually<br />

handle many conflicts that could otherwise be handled automatically.<br />

Additional Resources<br />

• For an introduction to branching and merging, see “Branching and Merging Primer”<br />

at http://msdn2.microsoft.com/en-us/library/aa730834(VS.80).aspx<br />

• For more information about branching, see “How to: Branch Files and Folders” at<br />

http://msdn2.microsoft.com/en-us/library/ms181425(VS.80).aspx<br />

• For more information about merging, see “How to: Merge Files and Folders” at<br />

http://msdn2.microsoft.com/en-us/library/ms181428(VS.80).aspx<br />

• For additional descriptions of how to branch and merge in <strong>Visual</strong> <strong>Studio</strong> 2005, see<br />

“Branching and Merging <strong>Team</strong> <strong>Foundation</strong> Source Control” at<br />

http://msdn2.microsoft.com/en-us/library/ms181423(VS.80).aspx<br />

How do I use branching to release my application?<br />

Use a Release branch when you are ready to stabilize your build prior to release.<br />

The following is an example of what your branch structure might look like after you have<br />

created a Release branch:<br />

• Main – Integration branch<br />

o Source<br />

o Other asset folders<br />

• Release 1 – Release branch<br />

o Source<br />

Keep the following recommendations in mind when working <strong>with</strong> a Release branch:<br />

• When to branch: When you are ready to release, integrate everything into the<br />

Main branch and then create a Release branch that can be used to stabilize the<br />

application prior to release.<br />

• When not to branch: If you are using one TFS project per release, you can use<br />

the new project to continue development instead of a branch in the current project.<br />

• Permissions on branch:<br />

• Prior to release – Read/write for all developers.<br />

• After release – Read/write for developers working on hotfixes, read-only for<br />

everyone else.<br />

• Build frequency on branch: On-demand builds.<br />

• Testing focus on branch: Sign off on release.<br />

You should use the Release branch for the targeted fixes and changes necessary in order<br />

to stabilize a build prior to release. <strong>Development</strong> of the next version of your application<br />

can occur in parallel in your main <strong>Development</strong> or Integration branch so that the new<br />

version can get the benefit of the stabilization changes you made prior to release. After a

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

Saved successfully!

Ooh no, something went wrong!