Architecture
The "architecture" of the production repository is comprised of several branches, each of which serve a different purpose.
master
This is the branch that exists on the production version of the game.
When a commit is made to this branch several automated processes begin to deploy the most recent changes to our live servers.
Commits should only be made to master
when a pull request is accepted and subsequently merged in.
dev
This branch is used for working on our codebase. There is a "staging" environment that runs the code for this separate from the production servers.
Code on dev
might contain bugs that need to be fixed before they get merged into master
.
New code is merged from dev
into master
via a pull request. This pull request runs some automated tests and security scans before it can be accepted and merged into master
.
feature-branch
Feature branches are created from the dev
branch. This means that when you run git branch feature-name
, you should have the dev
branch checked out already.
These branches are merged into dev
via a pull requeust.