diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 44473a5e..aa6eda68 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -29,23 +29,21 @@ ## Branch Naming Convention -Every branch **must** follow one of these prefixes to identify the level of change: +Git branch names cannot include spaces or colons, so we use slash-prefixed names. Pick the prefix that matches your change type and follow it with an optional scope and a short, kebab-case description. | Prefix | Semver Impact | When to Use | |--------|---------------|-------------| -| `fix(scope): ...` | Patch | Bug fixes, corrections, minor adjustments | -| `feat(scope): ...` | Minor | New features, new filters, new command support | -| `chore(scope): ...` | Major | Breaking changes, API changes, removed functionality | +| `fix/` | Patch | Bug fixes, corrections, minor adjustments | +| `feat/` | Minor | New features, new filters, new command support | +| `chore/` | Major | Breaking changes, API changes, removed functionality | -The **scope** in parentheses indicates which part of the project is concerned (e.g. `git`, `kubectl`, `filter`, `tracking`, `config`). - -**Branch title must clearly describe what is affected and the goal.** +Combine the prefix with a scope if it adds clarity (e.g. `git`, `kubectl`, `filter`, `tracking`, `config`) and finish with a descriptive slug: `fix/-` or `feat/`. Examples: ``` -fix(git): log-filter-drops-merge-commits -feat(kubectl): add-pod-list-filter -chore(proxy): remove-deprecated-flags +fix/git-log-filter-drops-merge-commits +feat/kubectl-add-pod-list-filter +chore/release-pipeline-cleanup ``` --- @@ -57,7 +55,7 @@ chore(proxy): remove-deprecated-flags ```bash git checkout develop git pull origin develop -git checkout -b "feat(scope): your-clear-description" +git checkout -b feat/scope-your-clear-description ``` ### 2. Make Your Changes