How We use Git

We use the "Git Flow" methodology popularized by Vincent Driessen:

Most basecamp todos should be associated with a unique and singular branch. That branch should ultimately turn into a merge request in Gitlab. After it is accepted and merged into develop, it should be deleted. So on an active project there should be a regular cadence of branches being created, processed, and destroyed.

Sub-branches of feature branches must use dashes, not slashes, otherwise git gets confused in some commands.So you can’t do feature/abc/subfeature. Underscores are also not kosher for a reason I am forgetting. So use dashes: feature/abc-subfeature