guidelines
Branches
Our default GitHub branch is master branch. It is set up to be automatically deployed with a staging environment on https://skyhitz-expo-next.vercel.app.
We also have prod branch, which is set up to be automatically deployed with the production environment on https://skyhitz.io.
Both branches are protected and require pull requests.
If you want to create a new branch prefix it with feature/ or fix/ depending on the details of the ticket.
Summary:
master- default and staging branch. Protected.prod- production branch. Protected.feature/*- feature branches.fix/*- branches with fixes.
Continous Integration
We had a few checks set up that run on each pull request to the protected branch.
ci- checks types, linting, and formatting.expo-preview- generates expo previewvercel- builds and deploys app using vercel preview deployment
To merge pull requests to protected branch, the following things are required:
- pull request has to be approved
- all checks have to pass
- there must be no conflicts with the protected branch
Releasing a new version
In order to release a new version of the app to production, follow these steps:
- Use a staging environment to test whether the app is bug-free.
- Create a new branch
release/<version>and bump versions inapp.jsonfile. - Merge this branch to
master - Schedule new builds using eas. In the
apps/expodirectory run the following command:
eas build --platform all --profile production
- Create a pull request from
masterbranch toprodbranch - Upload the build to the stores