Direct pushes to main/master are BLOCKED. All changes must go through Pull Requests.
-
Create a feature branch (never work on main/master):
git checkout -b feat/your-feature-name # or git checkout -b fix/issue-description -
Make your changes and commit:
git add . git commit -m "feat: descriptive commit message"
-
Push the branch:
git push origin feat/your-feature-name
-
Create a Pull Request using the GitHub CLI:
gh pr create --title "feat: Add new feature" --body "Description of changes"
-
Merge after review:
gh pr merge --squash --delete-branch
feat/- New featuresfix/- Bug fixesdocs/- Documentation changesrefactor/- Code refactoringtest/- Test additions/changeschore/- Maintenance tasks
- ❌ Never push directly to
mainormaster - ❌ Never use
git push --forceon protected branches - ❌ Never delete the
mainormasterbranch - ❌ Never commit directly without a PR
When working with this repository, ensure your git config includes:
git config user.name "Your Name"
git config user.email "[email protected]"- All changes go through PR review
- No force pushes allowed
- Branch deletion is prevented
- CI checks should pass before merge
# Start new work
git checkout -b feat/new-feature
# After making changes
git add . && git commit -m "feat: add new feature"
git push origin feat/new-feature
# Create PR
gh pr create --title "feat: Add new feature" --body "What it does"
# After PR approved
gh pr merge --squash --delete-branch
# Back to main
git checkout main && git pull