# Git Workflow & Branching Strategy {#git-workflow--branching-strategy}


Git branching model and contribution workflow for Ever Gauzy.


## Branching Model {#branching-model}






```mermaid
gitgraph
    commit id: "Initial"
    branch develop
    checkout develop
    commit id: "Feature A"
    branch feature/task-view
    commit id: "Task view WIP"
    commit id: "Task view done"
    checkout develop
    merge feature/task-view
    branch release/1.0
    commit id: "Release prep"
    checkout main
    merge release/1.0 tag: "v1.0.0"
    checkout develop
    merge release/1.0
```






## Branch Naming {#branch-naming}


| Branch Type   | Pattern                 | Example                  |
| ------------- | ----------------------- | ------------------------ |
| Feature       | `feature/{description}` | `feature/daily-plans`    |
| Bugfix        | `fix/{description}`     | `fix/timer-not-stopping` |
| Hotfix        | `hotfix/{description}`  | `hotfix/security-patch`  |
| Release       | `release/{version}`     | `release/1.5.0`          |
| Documentation | `docs/{description}`    | `docs/api-reference`     |


## Commit Messages {#commit-messages}


Follow [Conventional Commits](https://www.conventionalcommits.org/):

```
feat(task): add daily plan feature
fix(timer): resolve timer not stopping on idle
docs(api): add employee endpoint docs
chore(deps): upgrade NestJS to v10
refactor(auth): simplify JWT validation
test(employee): add unit tests for employee service
```


## Pull Request Process {#pull-request-process}


1. Create feature branch from `develop`
2. Implement changes with tests
3. Open PR targeting `develop`
4. Wait for CI checks to pass
5. Request review from 1-2 reviewers
6. Address review comments
7. Squash merge into `develop`


## CI Checks {#ci-checks}


| Check         | Description              |
| ------------- | ------------------------ |
| Build         | `yarn build` succeeds    |
| Lint          | `yarn lint` passes       |
| Unit Tests    | `yarn test` passes       |
| E2E Tests     | Playwright tests pass    |
| Code Coverage | Coverage meets threshold |


## Related Pages {#related-pages}


- [Contributing](https://sourcey-gauzy.pages.dev/development/contributing/index.md) — contribution guide
- [Coding Standards](https://sourcey-gauzy.pages.dev/development/coding-standards/index.md) — code style
- [Release Process](https://sourcey-gauzy.pages.dev/development/release-process/index.md) — how releases work
