-
Notifications
You must be signed in to change notification settings - Fork 0
Contribution
Luis Rivera edited this page Jun 24, 2020
·
7 revisions
For those team members willing to contribute, make sure you understand the content hereby explained before doing anything.
All development branches are to be named dev-* where * shall be replaced by the branch name. The branch name shall reflect what the branch was created for or intended to be worked on (defect/bug fix, addition, enhancement, etc.).
Examples:
| Branch Purpose | Bad Name | Good Name |
|---|---|---|
| Create a new LASSO module | dev-add-module |
dev-add-lasso-module |
| Fix bug in P-values module's function | dev-fix-bug |
dev-fix-pvalues-bug |
| Refactor Logistic Regression module | dev-change-lr |
dev-refactor-lr-module |
Remember, explicit is better than implicit (add, fix, refactor, bug/defect, improve/enhance).
- Create a local branch
- Create/modify unit test cases
- Add/commit software changes
- Run unit test cases
- Back to step 2 upon failures
- Push local branch to remote repository
git push origin dev-*
- Create a new pull request
- base:
masterbranch - compare:
dev-*branch
- base:
- Assign reviewers to the pull request to receive feedback
Note: * shall be replaced by the branch name.
- Implement changes requested
- As agreed on per team discussions
- Run unit test cases
- Back to step 1 upon failures
- Push new changes implemented
- Repeat steps 1-3 until team agreement
- Run unit test suite from
dev-*branch- All tests must pass
- If test suite passes, approve review
- Back to step 1 upon failures
- Merge changes in
dev-*tomasterbranch
Note: * shall be replaced by the branch name.