For the majority of my scenarios, git flow has done quite well. Given the following scenario (in chronological order), however, I'm not sure what the best way to move forward would be:
- Release 1.0 is pushed to production environment (done with "git flow release")
- Post-release development of new features and bug fixes are done in development branch
- A few major bugs and a couple of missing requirements surface in release 1.0 and client decides they can't wait for next major release, but some of these bugs/features have already been addressed in the development branch, in addition to some work that should wait for the next release.
If we had a crystal ball, I believe we should have applied the updates as hot fixes rather than in the development branch, but it's too late for that now. If we start a hotfix (off the master branch), we could literally copy & paste the appropriate updates between branches (gross), but then we'll end up with some nasty conflicts when we merge the branches (at some point).
In this particular situation, what would be the best way to keep headaches at a minimum?