Mainly following Git flow...
Introduce a dev branch that will be our main development branch.
New workflow:
- create a branch linked to the task to be done
- commit on the branch
- start a PR to merge the created branch on the dev branch
- rebase and merge when it's validated.
On Hockeyapp, do not upload builds from the master branch anymore, but from the dev branch.
Branch master is considered as stable, we do not commit ourselves on it.
Triggering a beta release (pushing dev on release/ios or release/android) will now do the following:
- merge the dev branch on master branch
- build the app
- deploy the app to Testflight or Google Play Store
- commit on master, tag and push if the build & deploy is successful
Triggering a production release will do the same as now: publishing the latest Testflight build to production, or build and publish a new app from master for Android.