| name | git-workflow |
| description | Git workflow for RAG-Challenge. Branch model with develop (integration) and main (production). Use this when creating branches, committing, pushing, or opening PRs. Use when this capability is needed. |
| metadata | {"author":"erincon01"} |
Git Workflow
Git workflow for RAG-Challenge. Uses a simplified GitFlow with develop (integration) and main (production).
Rules
- Never push directly to
main or develop — all changes via feature branch + PR
- Conventional Commits format in English:
type(scope): description
- No AI attribution in commits or PRs (
Co-Authored-By, Generated with, etc.)
- Never force push
- Always update CHANGELOG.md under
## [Unreleased] in code PRs
Branch naming
feature/NNN-description # New functionality (from develop)
fix/NNN-description # Bug fixes (from develop)
hotfix/NNN-description # Urgent production fixes (from main)
chore/description # Maintenance, tooling, config (from develop)
refactor/description # Restructure without behavior change (from develop)
NNN = zero-padded sequence number (e.g., 016, 040). Get next available from repo.
Commit types
| Type | When |
|---|
feat(scope) | New functionality |
fix(scope) | Bug fix |
docs | Documentation only |
test(scope) | Adding or updating tests |
chore(scope) | Maintenance, CI/CD, dependencies |
refactor(scope) | Restructure without behavior change |
style | Formatting only |
perf(scope) | Performance improvement |
Workflow for a feature/fix
git checkout develop && git pull origin develop
git checkout -b feature/NNN-description
git add <specific-files>
git commit -m "feat(scope): description"
git push -u origin feature/NNN-description
gh pr create --base develop --title "feat(scope): description" --body "..."
OpenSpec integration
For non-trivial changes, use the OpenSpec workflow first:
/opsx:propose <change-name> — creates proposal, design, specs, tasks
- Create branch:
git checkout -b feature/NNN-description
/opsx:apply — implements tasks with TDD
- Push, PR, merge
/opsx:archive — archives completed change
PR checklist
Releases
- PR
develop → main with title release: vX.Y.Z
- Follow Semantic Versioning (MAJOR.MINOR.PATCH)
- Tag on main after merge:
git tag vX.Y.Z && git push origin vX.Y.Z
- Promote
[Unreleased] to [X.Y.Z] - YYYY-MM-DD in CHANGELOG
Source: erincon01/RAG-Challenge — distributed by TomeVault.