-
NEVER PUSH DIRECTLY TO 'main'. IT'S PROTECTED. ALL CHANGES WILL GO THROUGH A PULL REQUEST.
-
ONE ISSUE = ONE BRANCH = ONE PULL REQUEST.
-
BRANCH OFF AN UP-TO-DATE 'main':
git checkout main git pull git checkout -b feature/your-feature
-
HOW TO NAME BRANCHES: 'feature/', FOR EXAMPLE: 'feature/buddy-finder'.
-
PULL 'main' INTO YOUR BRANCH EVERY DAY OR TWO. SO THAT MERGE CONFLICTS REMAIN SMALL.
-
OPEN THE PULL REQUEST AS SOON AS A PIECE WORKS. ADD 'Closes #' in the description.
-
NOBODY MERGES THEIR OWN PULL REQUEST. ONE TEAM MEMBER MUST APPROVE OF IT FIRST.
-
REVIEWERS: OPEN THE CHANGES AND CAREFULLY READ THEM BEFORE APPROVING. AND RESOLVE ALL COMMENT THREADS BEFORE MERGING.
-
SHARED FILES: TELL THE GROUP BEFORE CHANGING THEM.
-
DON'T CHANGE REPO SETTINGS (Settings -> Branches) WITHOUT TEAM AGREEMENT.
-
WE FOLLOW CONVENTIONAL COMMITS FOR COMMIT MESSAGES
- ISSUE STARTS: MOVE TO IN PROGRESS
- PULL REQUESTS OPENED: MOVE TO IN REVIEW
- PULL REQUEST MERGED: MOVE TO DONE
- STUCK ON SOMETHING: ADD THE BLOCKED LABEL AND UPDATE IN THE GROUP CHAT.
See the Branch Plan Spreadsheet to see who owns each branch.