introduction to source control management with tfs

24
INTRODUCTION TO SCM WITH TFS THE ROAD TO AS-NEEDED BRANCHING

Upload: stacy-vicknair

Post on 18-Dec-2014

194 views

Category:

Technology


2 download

DESCRIPTION

In this session we’ll discuss the basics of source control including etiquette, best practices and how to use TFS source control to manage projects of varying complexity. This will be an interactive session, so please create a personal TFS project via Visual Studio Online and make sure you are able to connect to it with the laptop you bring to the session. You’re welcome to join us without prior setup but you’ll get more from the hands on experience! http://www.visualstudio.com/products/visual-studio-online-overview-vs#

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/