Transcript
Page 1: Introduction to Source Control Management with TFS

INTRODUCTION TO SCM WITH TFSTHE ROAD TO AS-NEEDED BRANCHING

Page 2: Introduction to Source Control Management with TFS

AGENDA• What you should already know

• Fundamentals

• When should we branch?

• Branching plans

• From theory to TFS

Page 3: Introduction to Source Control Management with TFS

WHAT YOU SHOULD ALREADY KNOW• How to check in code.

• How to break a build.

• How to check out code.

This presentation is about managing source control, not simply using source control!

Page 4: Introduction to Source Control Management with TFS

BUT I DON’T MANAGE TFS!

Page 5: Introduction to Source Control Management with TFS

WE NEED MORE CAPABLE FOLKS• It’s easier to manage source you’re familiar with.

• If you need someone else to do it for your project, there’s a

bottleneck.

• When the time comes and you need to lead a project, you

should be capable of handling the SCM with a little guidance.

Page 6: Introduction to Source Control Management with TFS

FUNDAMENTALS

Page 7: Introduction to Source Control Management with TFS

BRANCH TYPES• The MAIN Branch

• The “root” of the branches• Only one.

• Should not be the location for active development

• Should always build

• The DEV Branches• Branched from MAIN

• Can be for bugfixing, features, milestones etc.

• The RELEASE Branches• Branched from MAIN

• Can represent Release, Hotfixes, Service Packs (Release Vehicles)

Page 8: Introduction to Source Control Management with TFS

INTEGRATION• Forward Integration

• Merges from parent to child branches.

• Reverse Integration• Merges from child to parent branches.

Page 9: Introduction to Source Control Management with TFS

WHEN SHOULD WE BRANCH?

Page 10: Introduction to Source Control Management with TFS

No Branch Plan

V2.0V1.0 V1.1

Page 11: Introduction to Source Control Management with TFS

Branch Post 1

release

bug

reported

CI CI CI

bug fix

?

merge how with what?

6

Page 12: Introduction to Source Control Management with TFS

Branch Post 2

release

bug

reported

CI CI CI

CI

bug fix

RI

FI

Page 13: Introduction to Source Control Management with TFS

Release Branching - Standard

B FI

RI

FI

RI

FI

RI

B

B

RI

RI

FI

Emergency

Hotfix

B

B

FI

RI

B

Page 14: Introduction to Source Control Management with TFS

Branching is “easy”

B

RI

RI

RI

Page 15: Introduction to Source Control Management with TFS

BRANCH TYPES• Basic

• Standard

• Advanced

• Code Promotion

• Branch by Feature

Page 16: Introduction to Source Control Management with TFS

BASIC BRANCH PLAN

Page 17: Introduction to Source Control Management with TFS

STANDARD BRANCH PLAN

Page 18: Introduction to Source Control Management with TFS

ADVANCED BRANCH PLAN

Page 19: Introduction to Source Control Management with TFS

CODE PROMOTION BRANCH PLAN

Page 20: Introduction to Source Control Management with TFS

BRANCH BY FEATURE BRANCH PLAN

Page 21: Introduction to Source Control Management with TFS

EXERCISE: WHAT’S THE STRATEGY?• Citizens (PaymentProcessing)

• OilfieldInstrumentation (EMS4, IADC)

• Extra Credit: Davinci.Montana

Page 22: Introduction to Source Control Management with TFS

FROM THEORY TO TFS• Citizens (PaymentProcessing)

• OilfieldInstrumentation (EMS4, IADC)

• Extra Credit: Davinci.Montana

Page 23: Introduction to Source Control Management with TFS

SUPER FUN HANDS ON TIME!

Page 24: Introduction to Source Control Management with TFS

ALM RANGERShttp://blogs.msdn.com/b/willy-peter_schaub/archive/2012/03/31/understanding-the-visual-studio-alm-rangers.aspx

http://vsarbranchingguide.codeplex.com/


Top Related