Please follow the following guideline when contributing to the repo
In summary
- Main collaboration branch is in dev.
- Codes/docs stable to be deployed, demo is in master.
- Feature dev, testing, etc. is a feature branch from dev
- Private branch that you don't want others to look is suffixed with -priv
- Keep all exploratory works in separate folders
- Each folder should have README.md about the folder.
- Example of working on a branch
-
Create new feature branch
git checkout dev; git pull #Update the dev for latest code
git branch feature/<feature_name> #Create features branch from it
-
Checkout your new branch, work on it, commit as usual
-
Set up and push feature branch to github, if you choose to
git push --set-upstream origin feature/<feature_name>
<dev, commit, push as usual>
-
Merge into dev when complete
git checkout dev; git pull #Update the dev for latest code
git merge feature/<feature_name> #merge the feature into dev
-
Push the dev into remote & create pull request
git push
Goto github, create pull request of the pending merge
-
Instance | Branch | Description, Instructions, Notes |
---|---|---|
Stable | master | Accepts merges from Development |
Development | dev | Accepts merges from Features/Issues |
Features/Issues | feature/* | Always branch off dev |
Features (Private branch) | feature/*-priv | Always branch off dev or feature/* |