Intro
What we'll cover
Ideas you'll come away with
Software development in the ideal world
In the ideal world we make one release
In the ideal world there are no bugs
In the ideal world we have all the time we need
In the ideal world all development finishes on time
The mainline model and its flow of change
Chaos?
Not necessarily...
The "tofu scale" - 1
The "tofu scale" - 2
From timeline...
...to baseline map
The "baseline protocol"
Why we don't drive through hedges
Example: release branch - 1
Example: release branch - 2
Example: development branch - 1
Example: development branch - 2
Example: development branch - 3
The Golden Rule of Collaboration
Modules and Branches - 1
Modules and branches - 2
Modules and branches - 3
"Private" modules
"Virtual" modules
"Active" modules
"Active" modules in development branches
The myth of merging
"Merge down, copy up" protocol
"Delivering" completed development
Not chaos at all
In a nutshell...
Read the book!
Are your software engineers dazed and confused by the repository that stores their work? Do iterative development, team collaboration, and parallel releases challenge your ability to keep track of evolving software? Is your company's version control methodology more complicated than the software it produces? In this presentation we'll take a step back from specific tools to explore the protocols, conventions, and etiquette of branching and merging. Using the ideal world as our model, we'll see how complicated, procedural rules can be replaced with a handful of simple, easy-to-recognize relationships between fundamental containers of software in development.
Tony Smith, European Technical Services Manager, Perforce Software. Tony is responsible for the provision of Perforce's trademark high quality technical support to Perforce users across Europe. He is an experienced developer and in addition to his management responsibilities, he also undertakes some of Perforce's product development.