🚚 The goal is to ship small features, quickly, and frequently.
In order to do this we need to break our features down into smaller units of work and 🤖 automate as much as possible. Testing should remain easy to setup, consistent with production, and enable rapid iteration. Local development should mirror our production environment as closely as possible.
- Create a feature-branch based on
main - Create a PR and leave setting it to
draftmode- This will give us a deployment connected to
staging
- This will give us a deployment connected to
- Pull Request review process
- Take it out of
draftmode - Assign a reviewer or two
- Address feedback, learn and teach
- Take it out of
- Merge into main
- This will automate the deployment
- Watch Sentry for any new errors
- Validate the change on production
We've chosen to make use of the Feature Branch Workflow when working with Git.
- main
- The source of truth, this is
live/productioncode - All features are branched off of the main branch
- The source of truth, this is
- xxxxx
feature/developmentbranches will connect tostagingdata- These should be highly
disposableand the default approach