git-commit
Execute git commit with conventional commit message analysis, intelligent staging, and message generation. Use when user asks to commit changes, create a git commit, or mentions "/commit". Supports: (1) Auto-detecting type and scope from changes, (2) Generating conventional commit messages from diff
By github · 44,792 installs
npx skills add github/awesome-copilot --skill git-commit
Source repository · Upstream listing
Git Commit with Conventional Commits
Overview
Create standardized, semantic git commits using the Conventional Commits specification. Analyze the actual diff to determine appropriate type, scope, and message.
Conventional Commit Format
Commit Types
Type Purpose
feat New feature
fix Bug fix
docs Documentation only
style Formatting/style (no logic)
refactor Code refactor (no feature/fix)
perf Performance improvement
test Add/update tests
build Build system/dependencies
ci CI/config changes
chore Maintenance/misc
revert Revert commit
Breaking Changes
Workflow
1. Analyze Diff
2. Stage Files (if needed)
If nothing is staged or you want to group changes differently:
Never commit secrets (.env, credentials.json, private keys).
3. Generate Commit Message
Analyze the diff to determine:
Type : What kind of change is this?
Scope : What area/module is affected?
Description : One line summary of what changed (present tense, imperative mood, <72 chars)
4. Execute Commit
Best Practices
One logical change per commit
Present tense: "add" not "added"
Imperative mood: "fix bug" not "fixes bug"
Reference issues: Closes 123 , Refs 456
Keep description under 72 characters
Git Safety Protocol
NEVER update git config
NEVER run destructive commands ( force, hard reset) without explicit request
NEVER skip hooks ( no verify) unless user asks
NEVER force push to main/master
If commit fails due to hooks, fix and create NEW commit (don't amend)