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.
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.
- 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.