Branching
    in
 TFS 2010

 Part IV
   by John Varan
Branching in TFS 2010: Part IV
 Internal Projects

 • Never directly used by customers
 • Multiple versions in production at a
   time
 • Do not involve UAT
 • Common libraries
Branching in TFS 2010: Part IV
 Internal Party Pattern

 • Hybrid of 2 patterns
   • Branch by Quality
   • Branch by Feature

 • Read-only Release branches
Branching in TFS 2010: Part IV
 Internal Pattern
Branching in TFS 2010: Part IV
 Internal Party Pattern

 Two primary branches
  • Development
  • Bug Fix
Branching in TFS 2010: Part IV
 Development Branch:

 • Main branch
 • Contains latest code
Branching in TFS 2010: Part IV
 Bug Fix Test Branch:

 • For testing bug fixes
 • Also used for staging
   deployments
Branching in TFS 2010: Part IV
Basic Folder and Branching Structure
Branching in TFS 2010: Part IV
 Basic Branch Hierarchy
Branching in TFS 2010: Part IV
 Development Cycle
Branching in TFS 2010: Part IV
 Major Release
Branching in TFS 2010: Part IV
 Major Release

 • Requires a Label for each release
 • Labels will become important
   later
Branching in TFS 2010: Part IV
 Labeling
Branching in TFS 2010: Part IV
 Labeling
Branching in TFS 2010: Part IV
 Incremental Release (Latest Version)
Branching in TFS 2010: Part IV
 Incremental Release (Latest Version)

 • Requires a Label for each release
 • Labels will become important
   later
Branching in TFS 2010: Part IV
 Incremental Release (Old Version)
Branching in TFS 2010: Part IV
 Incremental Release (Old Version)

 •   First, rollback Bug Fix to old label
 •   Fix and test code
 •   Requires a Label for each release
 •   Rollback to latest release
 •   Optionally merge to Development
Branching in TFS 2010: Part IV
 Rolling back
Branching in TFS 2010: Part IV
 Rolling back
Branching in TFS 2010: Part IV
                 End of Part IV

 Part V: Sharing Common Code

Branching in TFS 2010 Part IV (Internal Pattern)

  • 1.
    Branching in TFS 2010 Part IV by John Varan
  • 2.
    Branching in TFS2010: Part IV Internal Projects • Never directly used by customers • Multiple versions in production at a time • Do not involve UAT • Common libraries
  • 3.
    Branching in TFS2010: Part IV Internal Party Pattern • Hybrid of 2 patterns • Branch by Quality • Branch by Feature • Read-only Release branches
  • 4.
    Branching in TFS2010: Part IV Internal Pattern
  • 5.
    Branching in TFS2010: Part IV Internal Party Pattern Two primary branches • Development • Bug Fix
  • 6.
    Branching in TFS2010: Part IV Development Branch: • Main branch • Contains latest code
  • 7.
    Branching in TFS2010: Part IV Bug Fix Test Branch: • For testing bug fixes • Also used for staging deployments
  • 8.
    Branching in TFS2010: Part IV Basic Folder and Branching Structure
  • 9.
    Branching in TFS2010: Part IV Basic Branch Hierarchy
  • 10.
    Branching in TFS2010: Part IV Development Cycle
  • 11.
    Branching in TFS2010: Part IV Major Release
  • 12.
    Branching in TFS2010: Part IV Major Release • Requires a Label for each release • Labels will become important later
  • 13.
    Branching in TFS2010: Part IV Labeling
  • 14.
    Branching in TFS2010: Part IV Labeling
  • 15.
    Branching in TFS2010: Part IV Incremental Release (Latest Version)
  • 16.
    Branching in TFS2010: Part IV Incremental Release (Latest Version) • Requires a Label for each release • Labels will become important later
  • 17.
    Branching in TFS2010: Part IV Incremental Release (Old Version)
  • 18.
    Branching in TFS2010: Part IV Incremental Release (Old Version) • First, rollback Bug Fix to old label • Fix and test code • Requires a Label for each release • Rollback to latest release • Optionally merge to Development
  • 19.
    Branching in TFS2010: Part IV Rolling back
  • 20.
    Branching in TFS2010: Part IV Rolling back
  • 21.
    Branching in TFS2010: Part IV End of Part IV Part V: Sharing Common Code