title: Git branch strategy for small dev team
body: <p>We have a web app that we update and release almost daily. We use git as our VCS, and our current branching strategy is very simple and broken: we have a master branch and we check changes that we 'feel good about' into it. This works, but only until we check in a breaking change.</p>
  
  <p>Does anyone have a favorite git branch strategy for <strong>small teams</strong> which meets the following requirements:</p>
  
  <ol>
  <li>Works well for teams of 2 to 3 developers</li>
  <li>Lightweight, and not too much process</li>
  <li>Allows devs to isolate work on bug fixes and larger features with ease</li>
  <li>Allows us to keep a stable branch (for those 'oh crap' moments when we have to get our production servers working)</li>
  </ol>
  
  <p>Ideally, I'd love to see your step-by-step process for a dev working on a new bug</p>