Skip to content

Workflow

Jonathan Austin edited this page Jan 21, 2019 · 4 revisions

GitHub Flow

Bordertech recommend following the GitHub Flow workflow. GitHub developed this workflow to make it easy to collaborate on projects regardless of their size or technical expertise.

Summary of workflow

  • Create a branch from the repository.
  • Create, edit, rename, move, or delete files.
  • Send a pull request from your branch with your proposed changes to kick off a discussion.
  • Make changes on your branch as needed. Your pull request will update automatically.
  • Merge the pull request once the branch is ready to be merged.
  • Tidy up your branches using the delete button in the pull request or on the branches page.

Tips

  • Anything in the master branch is deployable.
  • Mandate Pull Requests when merging branches to enforce quality checks.
  • Mandate Code Reviews when merging into master.
  • Create a Release branch to perform a release as this makes it a lot easier to back out. After a successful release and deploy, merge Release into master
  • Delete feature and release branches once merged

Variations

For a large piece of development work with a number of team members, it is recommended to:-

  • create a development branch off master
  • team members create feature branches off the development branch
  • Team members do Pull Requests to merge the feature back into the development branch
  • When ready to release, create a release branch off the development branch and then merge into master
  • Delete the development branch

Note:- This is similar to the Git Flow paradigm

References

Clone this wiki locally