git-workflow

Structured development workflow using git, conventional commits, and work logging.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "git-workflow" with this command: npx skills add profpowell/vanilla-breeze/profpowell-vanilla-breeze-git-workflow

Git Workflow Skill

Structured development workflow using git, conventional commits, and work logging.

Core Principles

Principle Description

Issue-First All work starts with an issue (bd or GitHub)

Feature Branches One branch per issue/feature

Conventional Commits Structured commit messages

Semver Versioning Semantic version numbers

Work Logging Document all changes in .worklog/

UAT Workflow Human acceptance testing before merge

Workflow Overview

┌─────────────────────────────────────────────────────────────┐ │ 1. Create/claim issue (bd create or bd update --status) │ │ ↓ │ │ 2. Create feature branch (git checkout -b type/issue-id) │ │ ↓ │ │ 3. Make changes, commit with conventional format │ │ ↓ │ │ 4. Create worklog entry documenting changes │ │ ↓ │ │ 5. Request UAT (/uat request <feature>) │ │ ↓ │ │ 6. Human tests and approves (/uat approve) or denies │ │ ↓ │ │ 7. Merge to main, close issue, tag if release │ └─────────────────────────────────────────────────────────────┘

Branch Naming Convention

<type>/<issue-id>-<short-description>

Type Use Case Example

feature/

New functionality feature/proj-123-dark-mode

fix/

Bug fixes fix/proj-456-form-validation

chore/

Maintenance, deps chore/proj-789-update-deps

docs/

Documentation only docs/proj-101-api-reference

refactor/

Code restructuring refactor/proj-202-simplify-auth

Conventional Commits

Format: <type>(<scope>): <description>

Types

Type When to Use

feat

New feature for the user

fix

Bug fix for the user

docs

Documentation changes

style

Formatting, missing semicolons (no code change)

refactor

Refactoring production code

test

Adding tests (no production code change)

chore

Build tasks, package manager configs

Examples

Feature

git commit -m "feat(auth): add OAuth2 login support"

Bug fix

git commit -m "fix(forms): correct email validation regex"

Documentation

git commit -m "docs(readme): add installation instructions"

Breaking change (add ! after type)

git commit -m "feat(api)!: change response format to JSON:API"

Commit Body for Complex Changes

git commit -m "$(cat <<'EOF' feat(validation): add incremental file validation

  • Add git-aware file detection
  • Implement MD5-based result caching
  • Support staged-only mode for pre-commit hooks

Closes: proj-59l EOF )"

Semantic Versioning (Semver)

Format: MAJOR.MINOR.PATCH

Version Part When to Bump Example

MAJOR Breaking changes 1.0.0 → 2.0.0

MINOR New features (backward compatible) 1.0.0 → 1.1.0

PATCH Bug fixes (backward compatible) 1.0.0 → 1.0.1

Tagging Releases

Create annotated tag

git tag -a v1.2.0 -m "Release v1.2.0: Add dark mode support"

Push tags

git push origin --tags

Work Logging

Every significant change creates a worklog entry in .worklog/ .

Worklog File Format

File: .worklog/YYYY-MM-DD-issue-id-description.md

Worklog: [Issue ID] - Short Description

Date: YYYY-MM-DD HH:MM Issue: {issue-id} Branch: feature/{issue-id}-description Status: in_progress | complete | blocked

Summary

Brief description of what was done.

Changes Made

  • List of files modified
  • Key decisions made
  • Problems solved

Files Modified

  • path/to/file1.js - Description of change
  • path/to/file2.css - Description of change

Testing Done

  • Unit tests pass
  • Manual testing complete
  • UAT requested

Notes

Any additional context for future reference.

Recovery Instructions

If this work needs to be recovered:

  1. Checkout branch: git checkout feature/{issue-id}
  2. Key commits: abc1234, def5678

Git Commands Reference

Starting Work

Sync with remote

git fetch origin git checkout main git pull origin main

Create feature branch

git checkout -b feature/{issue-id}-description

Claim the issue

bd update {issue-id} --status in_progress

During Work

Stage changes

git add <files>

Commit with conventional format

git commit -m "feat(scope): description"

Push to remote (first time)

git push -u origin feature/{issue-id}-description

Push subsequent changes

git push

Completing Work

Ensure all tests pass

npm test

Update worklog

Create/update .worklog/YYYY-MM-DD-xxx.md

Request UAT

/uat request <feature-name>

After UAT approval, merge to main

git checkout main git pull origin main git merge --no-ff feature/{issue-id}-description git push origin main

Close the issue

bd close {issue-id} --reason "Implemented and merged"

Delete feature branch

git branch -d feature/{issue-id}-description git push origin --delete feature/{issue-id}-description

UAT (User Acceptance Testing)

Requesting UAT

After completing work, request human testing:

/uat request <feature-name>

This creates a uat-<feature-name>.md file with testing instructions.

UAT Response

Human reviews and responds:

/uat approve <feature-name> # Feature accepted /uat deny <feature-name> # Feature needs work

Handling Denied UAT

If UAT is denied:

  • Review feedback in the UAT file

  • Make necessary changes

  • Update worklog

  • Request UAT again

Pre-Session Checklist

When starting an AI assistant session:

  • Check git status: Any uncommitted changes?

  • Review open issues: bd ready or bd list --status open

  • Check current branch: On main or a feature branch?

  • Review recent worklogs: .worklog/ for context

Red Flags

Situation Action

Working without an issue Create issue first with bd create

Commits directly to main Use feature branch

No worklog entry Create before requesting UAT

Large uncommitted changes Commit incrementally

Merge conflicts Resolve carefully, test after

Quick Reference

Start work on issue

bd update <id> --status in_progress git checkout -b feature/<id>-description

Commit change

git add . && git commit -m "feat(scope): description"

Complete work

git push -u origin HEAD

Create worklog entry

/uat request <feature>

After approval: merge, close issue, cleanup

Related Skills

  • pre-flight-check - "INVOKE FIRST before any code work

  • ci-cd - Configure GitHub Actions for automated testing, building,...

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

api-client

No summary provided by upstream source.

Repository SourceNeeds Review
General

validation

No summary provided by upstream source.

Repository SourceNeeds Review
General

fake-content

No summary provided by upstream source.

Repository SourceNeeds Review