Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Branching strategies: choose wisely to minimise costs @phpDay Verona 2017

Branching strategies: choose wisely to minimise costs @phpDay Verona 2017

Is your team choosing the branching strategy from the beginning, or is it switching after a while to better accommodate the current project stage? How does this affect you, and what are the costs involved? Multiply this by the number of repositories, each playing a definite role in a large-scale project, and you will want to know how to minimise the impact.

In the inception phase, developers are the ones producing code, and oftentimes they choose the project branching strategy that mostly fits their immediate needs. In some teams the developers don't have DevOps knowledge, so when there is a working prototype that needs to see the light of day (err... server), they need a packagist to help them assemble the code so that it can be deployed in a specific environment, which often translates into a branching change. When the codebase matures and bug hunts start to occur, new constraints are imposed, and a more mature strategy is transitioned to.

The branching model needs to be simple - so that everyone involved can grasp it quickly, flexible - so it can serve the needs of very different roles within the project lifecycle, adaptable - when you have a particular unforeseen need, it should not be a barrier.

See what's already being used by others, ask a few questions that might drive an adaptation of your choice, then choose wisely. Then let your team spend their time on coding rather than painfully switching strategies.

Georgiana Gligor

May 12, 2017

More Decks by Georgiana Gligor

Other Decks in Technology


  1. 2 Georgiana Gligor ✤ Geek. Mother. Do-er. ✤ Crafting LAMP

    enterprise apps ✤ Large-Scale Application Architect ✤ PHP Cluj Meetup Organiser ✤ Systems Engineering PhD Student @gbtekkie [email protected]
  2. 5 magic bullet solving conflicts build a one-size-fits-all recipe daily

    usage of git commands WE ARE NOT TALKING ABOUT
  3. 6

  4. 7 where to look when you need help highlight costs

    framework to make informed decisions WE WILL AIM FOR
  5. 9 2015 Stack Overflow Developer Survey PRESENT Git SVN TFS

    Mercurial CVS Perforce Other I don’t use source control 9.3% 5.8% 3.3% 4.2% 7.9% 12.2% 36.9% 69.3%
  6. 12 It's not like git got everything right, but it

    got all the really basic issues right in a way that no other SCM had ever done before. Linus Torvalds, 2014 linux.com 2015 interview
  7. 52 ✤ is anyone waisting time? ✤ polyglot technology stack

    ✤ geographically distributed team ✤ production bugs pile up ✤ team restructuring TRANSITION?
  8. 54 RECOMMENDED READING ✤Guide to Enterprise PHP Development ✤A Rebase-based

    workflow ✤Git team workflows: merge or rebase? ✤Understanding the Git Workflow ✤Linus on clean history ✤gitworkflows ✤GitHub Flow ✤Atlassian Simple Git Workflow ✤GitLab Flow ✤Git Flow ✤Atlassian series on Git ✤Trunk-based Development