Files
hoopscout/CONTRIBUTING.md

47 lines
1.3 KiB
Markdown

# Contributing to HoopScout
## Branching Model (GitFlow Required)
- `main`: production-ready releases only
- `develop`: integration branch for completed features
- `feature/*`: feature development branches from `develop`
- `release/*`: release hardening branches from `develop`
- `hotfix/*`: urgent production fixes from `main`
## Workflow
1. Create branch from the correct base:
- `feature/*` from `develop`
- `release/*` from `develop`
- `hotfix/*` from `main`
2. Keep branch scope small and focused.
3. Open PR into the proper target branch.
4. Require passing CI checks and at least one review.
5. Squash or rebase merge according to repository policy.
## Local Development
1. `cp .env.example .env`
2. `docker compose up --build`
3. `docker compose exec web python manage.py migrate`
4. `docker compose exec web python manage.py createsuperuser`
## Testing
```bash
docker compose exec web pytest
```
## Commit Guidance
- Use clear commit messages with intent and scope.
- Avoid mixing refactors with feature behavior changes.
- Include migration files when model changes are introduced.
## Definition of Done (MVP)
- Feature works in Dockerized environment.
- Tests added/updated for behavior change.
- Documentation updated when commands, config, or workflows change.
- No secrets committed.