Simplified flow for smaller projects:
Things to keep in mind:
Branches should be short-lived
When a large amount of code is opened for a PR, the code review can be tedious.
The master branch, is the branch that you are showing to the public, only commit high-quality code.
Git branches are seperated by group tokens:
group1/foo
group2/foo
group1/bar
group2/bar
group3/bar
group1/baz
Examples of tokens:
wip Works in progress
feat Feature I'm adding or expanding
bugfix Bug fix or experiment
hotfix Hot fix to be merged quickly
junk Throwaway branch created to experiment
chore Cleaning up / organizing code; chores!
docs When adding or modifying documentation
refactor Working on refactoring, no new code
tests When added tests or correcting tests
username Your Git username
user-story-{id} Identify the user story where the id is the issue id
issue-{id} Identify the issue where the id is the issue id
Git branches may be further tokenized:
feat/user-story-6/brief-description
feat/feat-area/feat-name
hotfix/brief-description
bugfix/gpnn/issue-4/right-click-unavailable
Full example:
wip/migrating-db-to-mongodb
Searching made easy:
git branch --list "feat/*"