Claude Code rule For developers

Git Workflow (rule)

Contributed by Rohit Ghumare (awesome-claude-code-toolkit)

Source: original file · added 2026-10-29

Git Workflow

Commit Messages

  • Follow conventional commits: type(scope): subject.
  • Types: feat, fix, refactor, docs, test, chore, perf, style, ci.
  • Subject line: imperative mood, lowercase, no period, max 72 characters.
  • Body: explain why, not what. Wrap at 80 characters.
  • Reference issues: Closes #123 or Relates to #456.

Branching

  • Create feature branches from main: feature/short-description.
  • Use prefixes: feature/, fix/, chore/, refactor/, docs/.
  • Keep branches short-lived. Merge within 1-3 days.
  • Delete branches after merging.

Pull Requests

  • One logical change per PR. Do not bundle unrelated changes.
  • Keep PRs under 400 lines of diff when possible.
  • Write a description explaining the motivation, not just the changes.
  • Include a test plan describing how to verify the change.
  • Request review from at least one person.
  • Address all review comments before merging.

Merge Strategy

  • Squash merge for feature branches (clean history).
  • Merge commit for release branches (preserve history).
  • Never force push to main or shared branches.
  • Rebase feature branches on main before merging to resolve conflicts.

Safety Rules

  • Never commit secrets, credentials, or API keys.
  • Never commit large binary files. Use Git LFS if needed.
  • Never commit generated files (dist/, build/, node_modules/).
  • Always review git diff --cached before committing.
  • Run tests before pushing. If CI fails, fix before merging.

Tags and Releases

  • Use semantic versioning: MAJOR.MINOR.PATCH.
  • Tag releases on main: git tag -a v1.2.3 -m "Release 1.2.3".
  • Write release notes summarizing changes since last release.
Original source file (unmodified)

# Git Workflow ## Commit Messages - Follow conventional commits: `type(scope): subject`. - Types: feat, fix, refactor, docs, test, chore, perf, style, ci. - Subject line: imperative mood, lowercase, no period, max 72 characters. - Body: explain why, not what. Wrap at 80 characters. - Reference issues: `Closes #123` or `Relates to #456`. ## Branching - Create feature branches from main: `feature/short-description`. - Use prefixes: `feature/`, `fix/`, `chore/`, `refactor/`, `docs/`. - Keep branches short-lived. Merge within 1-3 days. - Delete branches after merging. ## Pull Requests - One logical change per PR. Do not bundle unrelated changes. - Keep PRs under 400 lines of diff when possible. - Write a description explaining the motivation, not just the changes. - Include a test plan describing how to verify the change. - Request review from at least one person. - Address all review comments before merging. ## Merge Strategy - Squash merge for feature branches (clean history). - Merge commit for release branches (preserve history). - Never force push to main or shared branches. - Rebase feature branches on main before merging to resolve conflicts. ## Safety Rules - Never commit secrets, credentials, or API keys. - Never commit large binary files. Use Git LFS if needed. - Never commit generated files (dist/, build/, node_modules/). - Always review `git diff --cached` before committing. - Run tests before pushing. If CI fails, fix before merging. ## Tags and Releases - Use semantic versioning: MAJOR.MINOR.PATCH. - Tag releases on main: `git tag -a v1.2.3 -m "Release 1.2.3"`. - Write release notes summarizing changes since last release.

Our network