Hacker News new | ask | show | jobs
by DougBTX 1647 days ago
Yes, a good middle ground is the slightly confusingly named “GitHub flow”: https://docs.github.com/en/get-started/quickstart/github-flo...

The main branch is always stable, releasable. Feature branches are branches off main, which are then merged back into main. No develop or release branches.

It is like trunk based development, especially if branches are kept short and regularly rebased onto origin/main, but with a point to run PR checks before merging.

2 comments

This is how most people I know develop and have done for years but I've never heard anybody ever call it "github flow".
I also lifted an eyebrow at this. It‘s just „trunk based development with feature branches and prs“.
It reminded me of when Microsoft used to pay people to say "just bing it".
The term predates the Microsoft acquisition by a number of years.
I think it acquired this name to distinguish from “git flow”, an alternative way to use git that is, put politely, somewhat of a maintenance headache.

https://www.atlassian.com/git/tutorials/comparing-workflows/...

I agree gitflow is annoying but this name sounds more like a cringey excuse to attach a Microsoft trademark to a common practice to me.
The term “GitHub flow” existed prior to the Microsoft acquisition. The GitHub documentation history would be definitive, but you can find articles dating back to 2014 discussing GitHub Flow vs GitFlow. The acquisition was in 2018.

I agree that the name isn’t the best. It is however at least specific. “Trunk based development” encompasses a class of development processes. Although I don’t think I’ve ever actually described a real world process as “GitHub Flow” because almost no one knows what it specifically is anyway.

Disclosure: I work for Microsoft.

Still just a cringey excuse to attach a trademark to a common practice, only sans the "Microsoft".

(OK, "git flow" was in a way even worse; that was Atlassian trying to usurp the generic "git" name for their own particular flow.)

> Still just a cringey excuse to attach a trademark to a common practice, only sans the "Microsoft".

I don't understand any of this sentence. Of course it's "sans Microsoft". It predated the acquisition by years.

But also I don't see the "cringe" here. "GitHub flow" was introduced as "this is what we do at GitHub". It is (or at least was?) the GitHib flow. https://githubflow.github.io/

> OK, "git flow" was in a way even worse; that was Atlassian trying to usurp the generic "git" name for their own particular flow.

Atlassian didn't even create GitFlow. https://nvie.com/posts/a-successful-git-branching-model/

I don't understand this mindset that starts with assuming everyone is essentially a bad actor.

Very similar to GitHub Flow is trunk based development:

https://trunkbaseddevelopment.com/