Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I've not used Git Flow, but at my current workplace, we use the following workflow:

- Master, main, and feature branches.

- Main is the trunk

- Work is done on feature branches that correspond to an issue

- Work is merged, once complete, from a feature branch back to main

- Main is about to use a CI/CD system to automate the testing and merging of feature branches and deploying them to a staging env. This is currently manually done.

- Releases are done by periodically merging main into master + squashing all the commits being merged into 1 commit. The result is that every commit on the master branch is a new version/release, which we tag appropriately.

The master branch is protected and only the project lead has the ability to override the protections and push to master. All work is normally merged following a pull request on github. It works very well for us. "Rebase early and often" is our mantra and conflicts are infrequent. I'm very happy with it so far.



Essentially you're following the git flow workflow.


Yeah I noticed that it's fairly similar. We don't have release branches, and our merging is less complicated for that. Also, even hot fixes are done on a feature branch, pushed to main, then finally to master.

Maybe that means they're "cold fixes" haha.


yep. replace "main" with "develop" and that's more or less git flow.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: