We use OneFlow + GitHub Forks.
This means:
feature/foobar
)you_fork:feature/foobar
to merge into the main
branch (in the “Draft” state):
you_fork:feature/foobar
→ upstream:main
Video explanation (14m) about how to work with GitHub forks.
Short answer:
Branch list is a shared resource that gets overused quickly (think “tragedy of the commons”). Forks make that resource private instead, thus saving everyone’s nerves.
OneFlow is a simplified version of the GitFlow/GitHubFlow branching model. Here it is: