Hacker News new | ask | show | jobs
by pnathan 4139 days ago
So if you're burping out a singular product with a singular release, rolling off master tends to make more sense. The complexity comes in when you're running multiple features and multiple products and multiple teams and having to do long running support of the older products/projects/teams all together.

Simpler is better; but when your actual code path of support looks like a network, that's the complexity you have to eat - I recommend eating it in your branching system (correspondingly, your versioned artifacts get some really funny version identifiers too. :) ).

1 comments

I've never encountered this but agree, that can lead to a real hell of branching. Do you dead-end your releases and then backport certain things from your mainline to previous release branches?

Sounds like a headache but probably the best way in certain domains.

Yeah, each release might be, e.g, firmware version x.y.z.patchlevel, and then you backport fixes and release on patchlevel.

Some customers demand the absolute minimum amount of change - their interface is essentially fixed, all they want is fixes, no more improvements.

Besides firmware, I think this also get applicable when doing larger whitelabel software, each major customer might want to have a particular version they are focused on using.