News for hackers. Stuff that matters.
Re:The End of CI by thiht on Sunday July 03, 2022 @06:29AM (#31966611)
That’s why you use branches though. You can break the CI on your own branch as much as you want, it’s nobody’s business. But a broken CI on a dev branch MUST prevent merging to a release branch.

If you allow devs to push directly on release branch, thus breaking the CI, you’re absolutely doing it wrong.

Re:The End of CI by cntainer on Sunday July 03, 2022 @09:24AM (#31967536)
Well, I believe "absolutely doing it wrong" is a bit strong-worded.

Of course you can do it like you said but that means longer feedback loops in general. If the team wants to integrate more often and reduce feedback loops then that model evolves.

I'll give you an example. In the team I mentioned in my top comment we were initially using a branching model with master, releases/, hotfixes/, dev, features/, which gradually evolved into master, dev, features/, which finally ended up as master, features/*. With the important mention that for small changes/fixes that needed to get deployed quickly nobody would bother with a branch they would just push to master.

This allowed us multiple production deploys per day per developer with no risk. That's why I said I don't get the point of the article, you can absolutely get those short feedback loops and continuous integration if you want it, just need to setup the process that way.

Re:The End of CI by thiht on Sunday July 03, 2022 @11:18AM (#31968348)
> Of course you can do it like you said but that means longer feedback loops in general. If the team wants to integrate more often and reduce feedback loops then that model evolves.

Longer feedback loops =/= long feedback loops. You can definitely wait 5 to 10 minutes if it means doing it right.

> With the important mention that for small changes/fixes that needed to get deployed quickly nobody would bother with a branch they would just push to master.

From my experience, the 1-2 lines fixes are the ones that benefit the most from automated CI because you’re doing it in a rush. In my team just last week a junior dev asked us to review their PR quickly because it was just 2 lines, and it didn’t even compile. We told them to be more careful in the future, but in the end it didn’t impact anything. It couldn’t possibly have impacted anything thanks to CI, it just makes it impossible to fuck up too recklessly.

Re:The End of CI by cassianoleal on Sunday July 03, 2022 @08:04AM (#31967079)
The TBD [0] crowd disagrees with you.

I agree with you though.

Not that I don't see the value proposed by TBD, but I think you can have >90% of said value and none of the downsides using a well thought out branching strategy.

[0] Trunk-Based Development: https://trunkbaseddevelopment.com/

Re:The End of CI by liuliu on Sunday July 03, 2022 @09:16AM (#31967476)
TBD doesn't mean you have a red CI main branch. Of course it is always green on main. It means you have short lived feature branch and rely on runtime checks for feature gating. A broken main will halt TBD. You are mischaracterize what TBD is.
Re:The End of CI by smallnix on Sunday July 03, 2022 @08:39AM (#31967252)
From the linked Website:

> Depending on the team size, and the rate of commits, short-lived feature branches are used for code-review and build checking (CI). [...] Very small teams may commit direct to the trunk.

Re:The End of CI by cassianoleal on Monday July 04, 2022 @07:13PM (#31982665)
Indeed. That seems to be a new-ish addition. I'm glad they now admit alternate approaches.
Re:The End of CI by cntainer on Sunday July 03, 2022 @09:34AM (#31967595)
I'm in the "continuously improve the team's process to best suit its needs" crowd.

Sometimes TBD is the answer, sometimes you need something else.

What I did notice is that, with time, mature teams end up simplifying processes in order to reduce friction and increase output.