Our (Team Hashnode) convention is quite similar to the one j mentioned.
We have two branches master and development; no direct modifications are made to these.
Side note: as soon as something is merged into
developmentall the changes are automatically deployed to a staging server, and are available to be tested, before they are pushed tomaster.
We generally branch out from the latest development branch; and branches are named in this pattern: <author>/<branch-type>/<branch-name>
Here are a few (recent) examples:
somu/perf/code-splittingalkshendra/feature/response-share-promptsai/misc/editor-experiments