So in the interest of keeping our branches from expanding forever I'm
thinking we should
stop creating new branches for each deploy cycle.
Instead, I'm thinking we should keep like three wmf branches. Let's call
them wmf-foo,
wmf-bar and wmf-baz for purposes of this e-mail, we can bikeshed later.
We'd basically
be having the two active branches we have now, plus the previous branch we
deployed.
When we start a new cycle, the "old" branch becomes the branch new branch,
merging
everything from master like we do when making a new branch. In practice
this would
map out to the following:
wmf-foo -> 1.22wmf19
wmf-bar -> 1.22wmf20
wmf-baz -> 1.22wmf21
wmf-foo -> 1.22wmf22
wmf-bar -> 1.22wmf23
And so on and so forth. When creating the new branch we can tag the old one
in the
same wmf/1.22wmf29 format so it's there for posterity. We could delete all
the old
branches and turn them into tags.
On the deployment side this is nice because we can just consistently have 3
branches
live on the cluster rather than lingering old ones. Switching would be a
matter of checking
out and scapping rather than cloning and scapping.
Too confusing? Alternative ideas? I'm open to most anything that will stop
us making
new branches all the time :)
-Chad