git-workflow-and-versioning

Structures git commits, branching, semantic versioning, and changelog practices for code changes.

Updated Mar 14, 2026
One-click install
npx skills add https://github.com/yourlabpt/yourlabpt_website --skill git-workflow-and-versioning-yourlabpt
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: git-workflow-and-versioning
Source: https://github.com/yourlabpt/yourlabpt_website/tree/main/projects/skills/git-workflow-and-versioning
Command: npx skills add https://github.com/yourlabpt/yourlabpt_website --skill git-workflow-and-versioning-yourlabpt

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Code changes made without version control discipline become impossible to review, revert, or release safely. This Skill enforces atomic commits, short-lived branches, semantic versioning, and curated changelogs so every change stays manageable and every release communicates clearly to consumers. ## Core Features & Use Cases - Commit Discipline: Enforces atomic commits with conventional message types (feat, fix, refactor, test, docs, chore), pre-commit hygiene checks, and separation of formatting from behavior changes. - Branching & Parallel Work: Guides trunk-based development with short-lived feature branches, branch naming conventions, and git worktrees for running parallel AI agent workstreams. - Release & Versioning: Applies semantic versioning rules (MAJOR.MINOR.PATCH), annotated git tags as the source of truth, and human-readable changelogs grouped by Added/Changed/Fixed/Deprecated. - Use Case: An AI agent finishes a messy working session with mixed changes. Use this Skill to split the work into clean atomic commits, write descriptive messages, then tag v1.4.0 and draft the changelog entry for release. ## Quick Start Use the git-workflow-and-versioning skill to split my uncommitted changes into atomic commits and prepare a tagged release with a changelog entry.

Frequently Asked Questions about git-workflow-and-versioning

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I split a messy working tree into atomic commits?▼

Stage and commit one logical change at a time, keeping each commit self-contained with a single concern. Separate formatting changes from behavior changes, and keep refactoring commits distinct from feature commits so each is easy to review and revert.

What is trunk-based development and when should I use it?▼

Trunk-based development keeps main always deployable with short-lived feature branches merged within 1-3 days. It is the recommended default because long-lived branches accumulate merge risk; use feature flags instead of long branches for incomplete work.

How do I choose between major, minor, and patch version bumps?▼

Use semantic versioning: MAJOR for breaking changes, MINOR for backward-compatible features, PATCH for backward-compatible fixes. When unsure whether a change is breaking, assume it is, since a surprise major is cheaper than a broken consumer.

How do git worktrees help with parallel development?▼

Git worktrees let you check out multiple branches in separate directories simultaneously, so agents or developers can work in parallel without branch switching. Create one with git worktree add, then remove it after merging.

What should a changelog entry include for a release?▼

A changelog entry groups changes by Added, Changed, Fixed, Deprecated, Removed, and Security, phrased around user impact rather than internal mechanics. Write it in the same change that makes the modification, and add migration notes for breaking changes.

When should I not commit generated files to git?▼

Do not commit build output like dist/ or .next/, environment files like .env, or IDE config unless shared. Commit generated files only when the project expects them, such as package-lock.json or Prisma migrations, and maintain a proper .gitignore.