cookbook

Git & GitHub

For source control we use GitHub. All projects are repositories under scrambledeggs.

Workflow

Versioning

Branching

main / master

feat/feature-name

feat - short for feature - this branch will contain code for a new feature or functionality such as:

chore/chore-name

this branch contains code for code maintenance such as:

fix/fix-name

this branch contains fixes on bugs found in the application

hotfix/1.2.3

this is a special fix/ branch that needs immediate deployment on production due to the bug blocking major flows/behavior in the application

Naming Conventions

Branching Strategies

Working on a Feature as a Sole Resource

create a branch from main

gitGraph
  commit tag: "1.0.0"
  commit tag: "1.0.1"
  commit tag: "1.1.0"
  branch feat/some-feature-name
  commit
  commit
  commit

Working on a Feature as a Team

1 - Create a branch from main

gitGraph
  commit tag: "1.0.0"
  commit tag: "1.0.1"
  commit tag: "1.1.0"
  branch feat/some-feature-name

2 - Create a branch from the previously created feature as how many members you are

gitGraph
  commit tag: "1.0.0"
  commit tag: "1.0.1"
  commit tag: "1.1.0"
  branch feat/some-feature-name
  branch feat/member-1
  branch chore/member-2
  branch fix/member-3
  commit
  commit
  checkout chore/member-2
  commit
  commit
  commit
  checkout feat/member-1
  commit

Commits and Pull Requests