> I'm +1 on this final summary. It infers that we are going to soon be adding a 
> job that runs CI checks on Master. This is good. That's probably a subject 
> for another thread. I do have one question about this approach. I think there 
> is probably a scenario where we need to fix an issue on the 4.x branch 
> itself. In this case I guess we would merge that commit back to master? And 
> then RM would have to keep track of when its safe to fast-forward to the 
> merged version of the fix?

My understanding is that we shouldn't ever have a reason to fix an
issue directly on the 4.x branch itself. When 4.x is ready for a
release, we will cut a new branch (e.g. 4.1.x) off of 4.x at that
point. If we find we absolutely need a fix for 4.1.x, then ideally we
should develop the fix on master then cherry-pick it into 4.1.x. I'm
not sure we'd also cherry-pick it into 4.x since then 4.x would no
longer be a snapshot of the most recent stable commit of master
(meaning we wouldn't be able to just "fast-forward" -- in git
terminology -- to the next most recent stable commit of master).

IMO unless an absolutely necessary fix is also super time-sensitive,
we should develop the fix on master and cherry-pick it into the 4.1.x
branch. Then all cherry-picks would be tracked the same way, without
also having to track hotfixes that need cherry-picked to master.
Whenever cherry-picks/hotfixes are used, the important thing is just
to make sure they get carried forward into the next release (either by
bringing them in naturally via moving forward on master, or
re-cherry-picking them). Again, these should only be things we deem
absolutely necessary for a release (show-stoppers).

- Rawlin

Reply via email to