SlideShare a Scribd company logo
www.orbitone.com
Orbit One BVBA
Raas van Gaverestraat 83
B-9000 GENT, BELGIUM
Website www.orbitone.com
E-mail info@orbitone.com
Tel. +32 9 330 15 00
VAT BE 456.457.353
Bank 442-7059001-50 (KBC)
Presenter: Mel Gerats
14 September, 2010
Branching and Merging guidelines
14 September, 2010
Branching and Merging guidelines
This devcafé
Source control structure
Branching and Merging
Basic branch plan
14 September, 2010
Branching and Merging guidelines
Current project structure in source control
Client
Trunk
•Project 1
•Project 2
•Project 3
Branches
•Project 1 release 1
•Project 2 release 1
•Project 2 release 2
(Most of the time)
14 September, 2010
Branching and Merging guidelines
Problems
Messy structure
What branch is the live version?
Who works on which branch?
I need to deploy, now what?
I just fixed a bug but cannot deploy it !?
14 September, 2010
Branching and Merging guidelines
New project structure
Client Name
Project Name
•Main
•Development
 Development branch 1
 Development branch 2
•Release
 Production
14 September, 2010
Branching and Merging guidelines
Demo
14 September, 2010
Branching and Merging guidelines
What does it solve?
Better structured
One release branch if there is only one release
Always have a stable, feature complete, staging environment
Always have a deployable version
Allow concurrent development
14 September, 2010
Branching and Merging guidelines
How do we solve this?
Basic branch plan
Developed by the Visual Studio ALM Rangers
On codeplex
http://tfsbranchingguideiii.codeplex.com/
14 September, 2010
Branching and Merging guidelines
Basic Branch plan
Basic Branch plan
Stable main branch for testing
Release branch for bug fixes on live version
Development branches for development
14 September, 2010
Branching and Merging guidelines
Terminology
 Main branch
Stable main branch used for QA. => Staging
 Release branch
Corresponds with live version. Used for hotfixes
 Development branches
Branches for planned changes
 Forward integrate
Merge changes to a child branch
•Main -> Development
•Main -> Release
 Reverse integrate
Merge changes to a parent branch
•Dev -> Main
•Release -> Main
14 September, 2010
Branching and Merging guidelines
Requirements
Single major release
Your servicing model is to have customers upgrade to the next
major release.
Any fixes shipped from the release branch will include all
previous fixes from that branch.
Omg that sounds like a website!
14 September, 2010
Branching and Merging guidelines
Main branch
Create When?
When you create the project
14 September, 2010
Branching and Merging guidelines
Development branches
Create when?
You need to develop something new.
Forward Integrate when?
Forward Integrate with each successful build of Main
Main changed? -> merge changes into Development branch
Reverse Integrate when?
Reverse Integrate (RI) based on some objective team criteria (e.g.
internal quality gates, end of sprint, etc
Feature is done -> merge into Main
ONLY COMPLETE FEATURES
14 September, 2010
Branching and Merging guidelines
Release branch
Create when?
When you deploy to production
Reverse Integrate when?
Every time the Release branch is changed
•Bug fix
•Content update?
Release branch changes -> merge it into Main
Forward integrate when?
Each release
Merge into Release branch -> deploy
14 September, 2010
Branching and Merging guidelines
Project lifetime
 New client, new project
Create new Team Project
Create Project Folder
Create project in Main branch
Create development branch
Start developing
 Feature is done
RI into Main, deploy to staging
 Features are approved
Create release branch
Deploy
14 September, 2010
Branching and Merging guidelines
Project Lifetime
 Two new features! Two developers
Create new development branch for one
Start developing on different branches
 Feature One Complete
 Forward integrate Main into dev
 Reverse Integrate into Main, deploy to staging
 Forward Integrate into Dev 2
 Feature Two complete
 Forward Integrate Main into Dev 2
 Reverse Integrate Dev 2 into Main, deploy to staging
 Forward Integrate Main into dev 1
 Features approved
 Reverse Integrate changes from Release into Main
 Forward Integrate changes from Main into Release
 Deploy release
 Drink beer
14 September, 2010
Branching and Merging guidelines
Challenges
How to handle specific feature releases
Feature 1 can go live, Feature 2 can not
2 options
Specific development branch for some changes
•Vnext
•Vnext +1
OR
Merge a specific change set, not the latest version
14 September, 2010
Branching and Merging guidelines
Challenges
Different solution names for different branches
Pro: more clear
Con: can’t merge all changes
14 September, 2010
Branching and Merging guidelines
Tips
Forward Integrate often
As often as possible
Communicate!
If there are multiple developers, make it clear what work is done
where
14 September, 2010
Branching and Merging guidelines
Links
Guidelines on development wiki
Visual Studio TFS Branching Guide 2010
14 September, 2010
Branching and Merging guidelines
Questions
And answers!
www.orbitone.com
Branching and Merging guidelines
14 September, 2010
Ad

More Related Content

Viewers also liked (20)

Илья Бирман – Ангстрем
Илья Бирман – АнгстремИлья Бирман – Ангстрем
Илья Бирман – Ангстрем
404fest
 
Stokes Slideshare
Stokes SlideshareStokes Slideshare
Stokes Slideshare
MiszShayG
 
E Discussion 29 Sept 2009
E Discussion 29 Sept 2009E Discussion 29 Sept 2009
E Discussion 29 Sept 2009
guest249b8a7
 
Tutorial Search With Custom Column Slide Share
Tutorial Search With Custom Column Slide ShareTutorial Search With Custom Column Slide Share
Tutorial Search With Custom Column Slide Share
guest3f640c
 
Lindner Floor And More Eng
Lindner Floor And More EngLindner Floor And More Eng
Lindner Floor And More Eng
lindnervietnam
 
Seguridad
SeguridadSeguridad
Seguridad
Alicia Hernandez Berenguer
 
Türkiyede Eğitim Sitemi
Türkiyede Eğitim SitemiTürkiyede Eğitim Sitemi
Türkiyede Eğitim Sitemi
Yunus Emre
 
Nordic Shapes Produktutvikling
Nordic Shapes ProduktutviklingNordic Shapes Produktutvikling
Nordic Shapes Produktutvikling
inars
 
Cecyt 2008
Cecyt 2008Cecyt 2008
Cecyt 2008
moniki
 
NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...
NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...
NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...
New England Direct Marketing Association
 
Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...
Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...
Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...
New England Direct Marketing Association
 
Energy Sense Benelux Introductie
Energy Sense Benelux IntroductieEnergy Sense Benelux Introductie
Energy Sense Benelux Introductie
LeonCoolen
 
Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...
Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...
Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...
Teresa Sofia Castro
 
“I love my bones!” Online violence involving children: Self-harm and danger...
“I love my bones!”  Online violence involving children:  Self-harm and danger...“I love my bones!”  Online violence involving children:  Self-harm and danger...
“I love my bones!” Online violence involving children: Self-harm and danger...
Teresa Sofia Castro
 
Morin
MorinMorin
Morin
Martha Elba Sanchez Guzman
 
Council Presentation Feb22
Council Presentation Feb22Council Presentation Feb22
Council Presentation Feb22
Ferndale Downtown Development Authority
 
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
Orbit One - We create coherence
 
8 steps to requirements success
8 steps to requirements success8 steps to requirements success
8 steps to requirements success
Steve Orr
 
Global Markalar
Global MarkalarGlobal Markalar
Global Markalar
Yunus Emre
 
Smart421 mobile421 mob devcon 3 july
Smart421 mobile421 mob devcon 3 julySmart421 mobile421 mob devcon 3 july
Smart421 mobile421 mob devcon 3 july
Andrew Smale
 
Илья Бирман – Ангстрем
Илья Бирман – АнгстремИлья Бирман – Ангстрем
Илья Бирман – Ангстрем
404fest
 
Stokes Slideshare
Stokes SlideshareStokes Slideshare
Stokes Slideshare
MiszShayG
 
E Discussion 29 Sept 2009
E Discussion 29 Sept 2009E Discussion 29 Sept 2009
E Discussion 29 Sept 2009
guest249b8a7
 
Tutorial Search With Custom Column Slide Share
Tutorial Search With Custom Column Slide ShareTutorial Search With Custom Column Slide Share
Tutorial Search With Custom Column Slide Share
guest3f640c
 
Lindner Floor And More Eng
Lindner Floor And More EngLindner Floor And More Eng
Lindner Floor And More Eng
lindnervietnam
 
Türkiyede Eğitim Sitemi
Türkiyede Eğitim SitemiTürkiyede Eğitim Sitemi
Türkiyede Eğitim Sitemi
Yunus Emre
 
Nordic Shapes Produktutvikling
Nordic Shapes ProduktutviklingNordic Shapes Produktutvikling
Nordic Shapes Produktutvikling
inars
 
Cecyt 2008
Cecyt 2008Cecyt 2008
Cecyt 2008
moniki
 
NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...
NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...
NEDMA15: Building and Engaging Online Communities with Twitter - Justine Jord...
New England Direct Marketing Association
 
Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...
Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...
Print Technology: Functional Printed Electronics - RFID & NFC versus QR Codes...
New England Direct Marketing Association
 
Energy Sense Benelux Introductie
Energy Sense Benelux IntroductieEnergy Sense Benelux Introductie
Energy Sense Benelux Introductie
LeonCoolen
 
Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...
Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...
Perspetivas sobre o stress e desordens emocionais resultantes de contactos in...
Teresa Sofia Castro
 
“I love my bones!” Online violence involving children: Self-harm and danger...
“I love my bones!”  Online violence involving children:  Self-harm and danger...“I love my bones!”  Online violence involving children:  Self-harm and danger...
“I love my bones!” Online violence involving children: Self-harm and danger...
Teresa Sofia Castro
 
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
ShareCafé: Office365 - Efficiënt samenwerken met minimum aan kosten en comple...
Orbit One - We create coherence
 
8 steps to requirements success
8 steps to requirements success8 steps to requirements success
8 steps to requirements success
Steve Orr
 
Global Markalar
Global MarkalarGlobal Markalar
Global Markalar
Yunus Emre
 
Smart421 mobile421 mob devcon 3 july
Smart421 mobile421 mob devcon 3 julySmart421 mobile421 mob devcon 3 july
Smart421 mobile421 mob devcon 3 july
Andrew Smale
 

Similar to Source control branching and merging guidelines (20)

SharePoint Designer 2013 Workflows - SP Intersection
SharePoint Designer 2013 Workflows - SP IntersectionSharePoint Designer 2013 Workflows - SP Intersection
SharePoint Designer 2013 Workflows - SP Intersection
Asif Rehmani
 
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
Knut Relbe-Moe [MVP, MCT]
 
Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17
Bhajan Mehta
 
Gitflow - Clouddictive
Gitflow   - ClouddictiveGitflow   - Clouddictive
Gitflow - Clouddictive
Clouddictive
 
SharePoint Developer Experience Present & Future
SharePoint Developer Experience Present & FutureSharePoint Developer Experience Present & Future
SharePoint Developer Experience Present & Future
mattbremer
 
Max’s Birthday Adventure: #19 Kochi : Anypoint Code Builder
Max’s Birthday Adventure: #19 Kochi : Anypoint Code BuilderMax’s Birthday Adventure: #19 Kochi : Anypoint Code Builder
Max’s Birthday Adventure: #19 Kochi : Anypoint Code Builder
sandeepmenon62
 
An Introduction to SharePoint Designer 2010
An Introduction to SharePoint Designer 2010An Introduction to SharePoint Designer 2010
An Introduction to SharePoint Designer 2010
Ben Robb
 
codeBeamer Eclipse DemoCamp-23.11.2010
codeBeamer Eclipse DemoCamp-23.11.2010codeBeamer Eclipse DemoCamp-23.11.2010
codeBeamer Eclipse DemoCamp-23.11.2010
Intland Software GmbH
 
Converting SAP Business Objects to a New Architecture Solution
Converting SAP Business Objects to a New Architecture SolutionConverting SAP Business Objects to a New Architecture Solution
Converting SAP Business Objects to a New Architecture Solution
Denodo
 
Make Subversion Agile
Make Subversion AgileMake Subversion Agile
Make Subversion Agile
WANdisco Plc
 
SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2
K2
 
Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Office Add-ins community call-March 2019
Office Add-ins community call-March 2019
Microsoft 365 Developer
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based development
go_oh
 
Introduction to WSO2 Developer Studio
Introduction to WSO2 Developer Studio Introduction to WSO2 Developer Studio
Introduction to WSO2 Developer Studio
WSO2
 
Iman Mukhopadhyay_Resume
Iman Mukhopadhyay_ResumeIman Mukhopadhyay_Resume
Iman Mukhopadhyay_Resume
Iman Mukherjee
 
Speakers slidedeckwidescreen sp-biz
Speakers slidedeckwidescreen   sp-bizSpeakers slidedeckwidescreen   sp-biz
Speakers slidedeckwidescreen sp-biz
Knut Relbe-Moe [MVP, MCT]
 
Test driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c UpgradeTest driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c Upgrade
Sven Bernhardt
 
Adopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile ManufacturerAdopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile Manufacturer
Gregor Zurowski
 
Adopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile ManufacturerAdopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile Manufacturer
VMware Tanzu
 
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practicesSPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
Knut Relbe-Moe [MVP, MCT]
 
SharePoint Designer 2013 Workflows - SP Intersection
SharePoint Designer 2013 Workflows - SP IntersectionSharePoint Designer 2013 Workflows - SP Intersection
SharePoint Designer 2013 Workflows - SP Intersection
Asif Rehmani
 
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
SPS Dubai Best Practice upgrading SharePoint from 2007/2010 to 2013 and 2013 SP1
Knut Relbe-Moe [MVP, MCT]
 
Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17Mule Experience Hub and Release Channel with Java 17
Mule Experience Hub and Release Channel with Java 17
Bhajan Mehta
 
Gitflow - Clouddictive
Gitflow   - ClouddictiveGitflow   - Clouddictive
Gitflow - Clouddictive
Clouddictive
 
SharePoint Developer Experience Present & Future
SharePoint Developer Experience Present & FutureSharePoint Developer Experience Present & Future
SharePoint Developer Experience Present & Future
mattbremer
 
Max’s Birthday Adventure: #19 Kochi : Anypoint Code Builder
Max’s Birthday Adventure: #19 Kochi : Anypoint Code BuilderMax’s Birthday Adventure: #19 Kochi : Anypoint Code Builder
Max’s Birthday Adventure: #19 Kochi : Anypoint Code Builder
sandeepmenon62
 
An Introduction to SharePoint Designer 2010
An Introduction to SharePoint Designer 2010An Introduction to SharePoint Designer 2010
An Introduction to SharePoint Designer 2010
Ben Robb
 
codeBeamer Eclipse DemoCamp-23.11.2010
codeBeamer Eclipse DemoCamp-23.11.2010codeBeamer Eclipse DemoCamp-23.11.2010
codeBeamer Eclipse DemoCamp-23.11.2010
Intland Software GmbH
 
Converting SAP Business Objects to a New Architecture Solution
Converting SAP Business Objects to a New Architecture SolutionConverting SAP Business Objects to a New Architecture Solution
Converting SAP Business Objects to a New Architecture Solution
Denodo
 
Make Subversion Agile
Make Subversion AgileMake Subversion Agile
Make Subversion Agile
WANdisco Plc
 
SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2SharePoint 2013 Workflow from K2
SharePoint 2013 Workflow from K2
K2
 
Office Add-ins community call-March 2019
Office Add-ins community call-March 2019Office Add-ins community call-March 2019
Office Add-ins community call-March 2019
Microsoft 365 Developer
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based development
go_oh
 
Introduction to WSO2 Developer Studio
Introduction to WSO2 Developer Studio Introduction to WSO2 Developer Studio
Introduction to WSO2 Developer Studio
WSO2
 
Iman Mukhopadhyay_Resume
Iman Mukhopadhyay_ResumeIman Mukhopadhyay_Resume
Iman Mukhopadhyay_Resume
Iman Mukherjee
 
Test driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c UpgradeTest driven Soa Suite 12c Upgrade
Test driven Soa Suite 12c Upgrade
Sven Bernhardt
 
Adopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile ManufacturerAdopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile Manufacturer
Gregor Zurowski
 
Adopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile ManufacturerAdopting PCF At An Automobile Manufacturer
Adopting PCF At An Automobile Manufacturer
VMware Tanzu
 
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practicesSPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
SPSBE14 SPSBE02 SharePoint Upgrade reel life experience, best practices
Knut Relbe-Moe [MVP, MCT]
 
Ad

More from Orbit One - We create coherence (20)

ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
Orbit One - We create coherence
 
HoGent tips and tricks van een self-made ondernemer
HoGent tips and tricks van een self-made ondernemer HoGent tips and tricks van een self-made ondernemer
HoGent tips and tricks van een self-made ondernemer
Orbit One - We create coherence
 
Het Nieuwe Werken in de praktijk
Het Nieuwe Werkenin de praktijkHet Nieuwe Werkenin de praktijk
Het Nieuwe Werken in de praktijk
Orbit One - We create coherence
 
ShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgradeShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgrade
Orbit One - We create coherence
 
ShareCafé 2 - Werk slimmer door geïntegreerde tools
ShareCafé 2 - Werk slimmer door geïntegreerde toolsShareCafé 2 - Werk slimmer door geïntegreerde tools
ShareCafé 2 - Werk slimmer door geïntegreerde tools
Orbit One - We create coherence
 
ShareCafé 1: Hou de Nieuwe Werker gemotiveerd
ShareCafé 1: Hou de Nieuwe Werker gemotiveerdShareCafé 1: Hou de Nieuwe Werker gemotiveerd
ShareCafé 1: Hou de Nieuwe Werker gemotiveerd
Orbit One - We create coherence
 
Business value of Lync integrations
Business value of Lync integrationsBusiness value of Lync integrations
Business value of Lync integrations
Orbit One - We create coherence
 
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
Orbit One - We create coherence
 
Identity in the cloud using Microsoft
Identity in the cloud using MicrosoftIdentity in the cloud using Microsoft
Identity in the cloud using Microsoft
Orbit One - We create coherence
 
OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...
Orbit One - We create coherence
 
OneCafé: The new world of work and your organisation
OneCafé: The new world of work and your organisationOneCafé: The new world of work and your organisation
OneCafé: The new world of work and your organisation
Orbit One - We create coherence
 
Social Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefitsSocial Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefits
Orbit One - We create coherence
 
Windows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best PracticesWindows Communication Foundation (WCF) Best Practices
Windows Communication Foundation (WCF) Best Practices
Orbit One - We create coherence
 
Azure Umbraco workshop
Azure Umbraco workshopAzure Umbraco workshop
Azure Umbraco workshop
Orbit One - We create coherence
 
Marketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensionsMarketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensions
Orbit One - We create coherence
 
Office 365, is cloud right for your company?
Office 365, is cloud right for your company?Office 365, is cloud right for your company?
Office 365, is cloud right for your company?
Orbit One - We create coherence
 
Who is Orbit One internet solutions?
Who is Orbit One internet solutions?Who is Orbit One internet solutions?
Who is Orbit One internet solutions?
Orbit One - We create coherence
 
Azure and Umbraco CMS
Azure and Umbraco CMSAzure and Umbraco CMS
Azure and Umbraco CMS
Orbit One - We create coherence
 
Ingredients of the new world of work
Ingredients of the new world of workIngredients of the new world of work
Ingredients of the new world of work
Orbit One - We create coherence
 
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
ShareCafé: SharePoint - Een doos vol documenten of dé tool om efficiënt samen...
Orbit One - We create coherence
 
ShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgradeShareCafé 3 - Geef je samenwerking een technologische upgrade
ShareCafé 3 - Geef je samenwerking een technologische upgrade
Orbit One - We create coherence
 
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
OneCafé: De toekomst van ledenorganisaties met behulp van CRM en informatie-u...
Orbit One - We create coherence
 
OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...OneCafé: The future of membership organizations facilitated by CRM and collab...
OneCafé: The future of membership organizations facilitated by CRM and collab...
Orbit One - We create coherence
 
Social Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefitsSocial Computing in your organization using SharePoint: challenges and benefits
Social Computing in your organization using SharePoint: challenges and benefits
Orbit One - We create coherence
 
Marketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensionsMarketing Automation in Dynamics CRM with ClickDimensions
Marketing Automation in Dynamics CRM with ClickDimensions
Orbit One - We create coherence
 
Ad

Recently uploaded (20)

Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
Lynda Kane
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5..."Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
Fwdays
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your UsersAutomation Dreamin' 2022: Sharing Some Gratitude with Your Users
Automation Dreamin' 2022: Sharing Some Gratitude with Your Users
Lynda Kane
 
Automation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From AnywhereAutomation Dreamin': Capture User Feedback From Anywhere
Automation Dreamin': Capture User Feedback From Anywhere
Lynda Kane
 
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdfThe Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
The Evolution of Meme Coins A New Era for Digital Currency ppt.pdf
Abi john
 
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
#AdminHour presents: Hour of Code2018 slide deck from 12/6/2018
Lynda Kane
 
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc Webinar: Consumer Expectations vs Corporate Realities on Data Broker...
TrustArc
 
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5..."Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
"Client Partnership — the Path to Exponential Growth for Companies Sized 50-5...
Fwdays
 
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdfComplete Guide to Advanced Logistics Management Software in Riyadh.pdf
Complete Guide to Advanced Logistics Management Software in Riyadh.pdf
Software Company
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Drupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy ConsumptionDrupalcamp Finland – Measuring Front-end Energy Consumption
Drupalcamp Finland – Measuring Front-end Energy Consumption
Exove
 
Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.Network Security. Different aspects of Network Security.
Network Security. Different aspects of Network Security.
gregtap1
 
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath MaestroDev Dives: Automate and orchestrate your processes with UiPath Maestro
Dev Dives: Automate and orchestrate your processes with UiPath Maestro
UiPathCommunity
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In FranceManifest Pre-Seed Update | A Humanoid OEM Deeptech In France
Manifest Pre-Seed Update | A Humanoid OEM Deeptech In France
chb3
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical DebtBuckeye Dreamin 2024: Assessing and Resolving Technical Debt
Buckeye Dreamin 2024: Assessing and Resolving Technical Debt
Lynda Kane
 
Rock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning JourneyRock, Paper, Scissors: An Apex Map Learning Journey
Rock, Paper, Scissors: An Apex Map Learning Journey
Lynda Kane
 

Source control branching and merging guidelines

  • 1. www.orbitone.com Orbit One BVBA Raas van Gaverestraat 83 B-9000 GENT, BELGIUM Website www.orbitone.com E-mail [email protected] Tel. +32 9 330 15 00 VAT BE 456.457.353 Bank 442-7059001-50 (KBC) Presenter: Mel Gerats 14 September, 2010 Branching and Merging guidelines
  • 2. 14 September, 2010 Branching and Merging guidelines This devcafé Source control structure Branching and Merging Basic branch plan
  • 3. 14 September, 2010 Branching and Merging guidelines Current project structure in source control Client Trunk •Project 1 •Project 2 •Project 3 Branches •Project 1 release 1 •Project 2 release 1 •Project 2 release 2 (Most of the time)
  • 4. 14 September, 2010 Branching and Merging guidelines Problems Messy structure What branch is the live version? Who works on which branch? I need to deploy, now what? I just fixed a bug but cannot deploy it !?
  • 5. 14 September, 2010 Branching and Merging guidelines New project structure Client Name Project Name •Main •Development  Development branch 1  Development branch 2 •Release  Production
  • 6. 14 September, 2010 Branching and Merging guidelines Demo
  • 7. 14 September, 2010 Branching and Merging guidelines What does it solve? Better structured One release branch if there is only one release Always have a stable, feature complete, staging environment Always have a deployable version Allow concurrent development
  • 8. 14 September, 2010 Branching and Merging guidelines How do we solve this? Basic branch plan Developed by the Visual Studio ALM Rangers On codeplex http://tfsbranchingguideiii.codeplex.com/
  • 9. 14 September, 2010 Branching and Merging guidelines Basic Branch plan Basic Branch plan Stable main branch for testing Release branch for bug fixes on live version Development branches for development
  • 10. 14 September, 2010 Branching and Merging guidelines Terminology  Main branch Stable main branch used for QA. => Staging  Release branch Corresponds with live version. Used for hotfixes  Development branches Branches for planned changes  Forward integrate Merge changes to a child branch •Main -> Development •Main -> Release  Reverse integrate Merge changes to a parent branch •Dev -> Main •Release -> Main
  • 11. 14 September, 2010 Branching and Merging guidelines Requirements Single major release Your servicing model is to have customers upgrade to the next major release. Any fixes shipped from the release branch will include all previous fixes from that branch. Omg that sounds like a website!
  • 12. 14 September, 2010 Branching and Merging guidelines Main branch Create When? When you create the project
  • 13. 14 September, 2010 Branching and Merging guidelines Development branches Create when? You need to develop something new. Forward Integrate when? Forward Integrate with each successful build of Main Main changed? -> merge changes into Development branch Reverse Integrate when? Reverse Integrate (RI) based on some objective team criteria (e.g. internal quality gates, end of sprint, etc Feature is done -> merge into Main ONLY COMPLETE FEATURES
  • 14. 14 September, 2010 Branching and Merging guidelines Release branch Create when? When you deploy to production Reverse Integrate when? Every time the Release branch is changed •Bug fix •Content update? Release branch changes -> merge it into Main Forward integrate when? Each release Merge into Release branch -> deploy
  • 15. 14 September, 2010 Branching and Merging guidelines Project lifetime  New client, new project Create new Team Project Create Project Folder Create project in Main branch Create development branch Start developing  Feature is done RI into Main, deploy to staging  Features are approved Create release branch Deploy
  • 16. 14 September, 2010 Branching and Merging guidelines Project Lifetime  Two new features! Two developers Create new development branch for one Start developing on different branches  Feature One Complete  Forward integrate Main into dev  Reverse Integrate into Main, deploy to staging  Forward Integrate into Dev 2  Feature Two complete  Forward Integrate Main into Dev 2  Reverse Integrate Dev 2 into Main, deploy to staging  Forward Integrate Main into dev 1  Features approved  Reverse Integrate changes from Release into Main  Forward Integrate changes from Main into Release  Deploy release  Drink beer
  • 17. 14 September, 2010 Branching and Merging guidelines Challenges How to handle specific feature releases Feature 1 can go live, Feature 2 can not 2 options Specific development branch for some changes •Vnext •Vnext +1 OR Merge a specific change set, not the latest version
  • 18. 14 September, 2010 Branching and Merging guidelines Challenges Different solution names for different branches Pro: more clear Con: can’t merge all changes
  • 19. 14 September, 2010 Branching and Merging guidelines Tips Forward Integrate often As often as possible Communicate! If there are multiple developers, make it clear what work is done where
  • 20. 14 September, 2010 Branching and Merging guidelines Links Guidelines on development wiki Visual Studio TFS Branching Guide 2010
  • 21. 14 September, 2010 Branching and Merging guidelines Questions And answers!
  • 22. www.orbitone.com Branching and Merging guidelines 14 September, 2010