Chapter 20. Branching and Merging
WHAT'S IN THIS CHAPTER?
Understanding branching and merging
Looking at common branching strategies
Walking through a basic branching plan implementation using Team Foundation Server 2010
One of the biggest problems that developers of software projects encounter is the understanding of the software that is being built. How are all the different aspects of your software project organized and accounted for? Does everyone understand the organization of the code base and the ramifications of making certain changes?
Many people are afraid of branching in version control, because of the additional complications that this brings into the management of your files. Do your developers know when they are allowed to create a code branch, and when they are supposed to merge their changes back into the MAIN
line? If not, you are asking for certain trouble as team members begin modifying the code.
There are trade-offs with any branching and merging strategy. The biggest trade-off is in the areas of risk versus productivity. Developers sometimes look at branching as having a low overhead, and don't see anything wrong with creating a branch of the code any time they must make a change. The capability to quickly and easily create branches can make developers more productive. However, creating branches in an ad hoc manner also adds more risk to your project.
One of the major risk areas surrounding branching is merging changes from branches back into the MAIN
line. The more ...
Get Professional Application Lifecycle Management with Visual Studio® 2010 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.