Repository navigation
Workflow
Cedric Boucher edited this page Nov 1, 2024
·
4 revisions
- Commits should follow THESE best practices. They're not strict rules but they are guidelines you should read and aim to follow.
- Create one branch for each issue (user story). The branch name should be the same of the user story (ex: US-03.05.01)
- Commit changes only to the branch that the changes are relevant to
- It is recommended to create branches in GitHub by navigating to the issue, then clicking create branch
- If you create a branch in a different way, link the branch to the issue in GitHub
- Git merges cannot be done. Instead, create a pull request in GitHub to request to merge a branch into the main branch
- Pull requests require at least 2 other team members to approve the request before it can be merged into main
- Merging the pull request should mark it as resolved and should automatically mark the branch's issue as resolved. If this doesn't happen, make sure the pull request was correctly linked to the issue and mark the issue as closed
- Feel free to create a draft pull request whenever you like, but do not mark is a ready until you are done changes. Otherwise, only create a final pull request once all required changes for the issue / user story have been implemented in the branch
- The android studio application should successfully compile and run before a pull request is approved.
- Any necessary tests should be included with the code, so that all the new code is being tested and all tests pass
- All code should be properly documented (in the same commit where the code was added or changed)
- Classes and methods should be documented using JavaDoc
- Code should be commented as necessary to improve code comprehension and communication. Add comments that add helpful insight into what the code is doing, no need to comment very simple or intuitive code
- Variables should be named in a way that a comment is not required to explain what the variable is. Each team member should be able to understand what each variable is for just by reading the variable name