Skip to content

Instantly share code, notes, and snippets.

@smp7d
Last active August 29, 2015 13:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save smp7d/9515874 to your computer and use it in GitHub Desktop.
Save smp7d/9515874 to your computer and use it in GitHub Desktop.

How Good is Your Branching Strategy?

  1. Start a new project for a salsa recipe. Recipe should have the title "Salsa Recipe" and should specify that ingredients should be mixed together and served in a wooden bowl. The ingredients are tomatoes, onions, cilantro, and ice cream. Tab out everything except the title. Build a release so we can demo.
  2. The demo users loved it. Release the recipe.
  3. You used tabs in the file and our standard is to use spaces. The users don't really care but we'd like to follow the standard. We can just release that during the next planned release. We will need to make sure it is fully QA'd so we can assure that it shows up correctly on the target operating systems and programs.
  4. Our chef has devised a couple of new features. First we want to serve the salsa in a clear glass bowl so people can see how much they have left. Next, he wants to replace the tomatoes and onions with diced mango and sugar. Can you build those features?
  5. Oh no! People have started to make the recipe we released and they are complaining that ice cream shouldn't be in there! Why did we add ice cream? That needs to get out of there immediately! We'll skip formal QA, it's an emergency. Release only this change!
  6. I know you thought I said clear glass bowl but I actually said frosted glass bowl. Got it?
  7. We're really interested in those features we had asked for. Can you build a release so we can demo them?
  8. So the focus group really liked the mango salsa, but they felt it looked slimy in the glass bowl. Let's go back to a wooden bowl. Can you build a release so we can demo?
  9. Demo users loved the mango salsa. Release it! Forget about all that glass bowl stuff, that was a bad idea.
  10. Look, even though we do mango salsa now, we have this one important customer who still loves the last tomato recipe. But, too many people don't understand that you need to use chopped tomatoes instead of tomatoes - they are just throwing whole tomatoes in the bowl. We need to amend this to make it clear and deploy it immediately. Everyone else will still use the mango recipe so we need to support both versions simultaneously. Just quickly patch the old version and release it.
  11. OK. We're going to change our salsa recipe to contain alcohol. There are two new features we potentially want to add. First, we want to add a splash of tequila to the salsa. Next, we want to suggest that it is served with a cold Mexican beer. If either of these features make it into production, we'll need to add a disclaimer under the title that says "**for 21+ only".
  12. Just build a release for the cold beer feature, tequila in salsa sounds kinda gross on second thought.
  13. It demo’d well. All set. Release it!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment