Marketplace git-commit
Use this skill when user asks to "commit changes", "create a commit", "stage and commit", or wants help with git commit workflow.
install
source · Clone the upstream repo
git clone https://github.com/aiskillstore/marketplace
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/aiskillstore/marketplace "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/21pounder/git-commit" ~/.claude/skills/aiskillstore-marketplace-git-commit && rm -rf "$T"
manifest:
skills/21pounder/git-commit/SKILL.mdsource content
Git Commit
Create well-structured git commits with conventional commit messages based on staged changes.
Parameters
{ "type": "object", "properties": { "message": { "type": "string", "description": "Optional commit message override" }, "type": { "type": "string", "enum": ["feat", "fix", "docs", "style", "refactor", "test", "chore"], "description": "Conventional commit type", "default": "auto" }, "scope": { "type": "string", "description": "Optional scope for the commit" } } }
When to Use
- User asks to "commit" changes
- User wants to "save" their work to git
- User asks for help with commit messages
- User wants to stage and commit files
Methodology
Phase 1: Status Check
- Run
to see current stategit status - Run
to see staged changesgit diff --staged - Run
to see unstaged changesgit diff - Check recent commit history for message style
Phase 2: Analysis
- Categorize Changes: Identify what changed (new files, modifications, deletions)
- Determine Type: Is this a feature, fix, refactor, etc.?
- Identify Scope: What component/module is affected?
- Summarize Purpose: What does this change accomplish?
Phase 3: Commit Creation
- Stage relevant files if not already staged
- Generate conventional commit message
- Execute the commit
- Verify success with
git status
Phase 4: Output
Report:
- What was committed
- The commit message used
- The new commit hash
Guidelines
- Follow Conventional Commits format:
type(scope): description - Keep subject line under 72 characters
- Use imperative mood ("Add feature" not "Added feature")
- Don't commit sensitive files (.env, credentials, etc.)
- Don't use --force or --amend unless explicitly requested
- Include meaningful description of WHY, not just WHAT
Examples
Example 1: Auto Commit
User Input: "Commit my changes"
Expected Behavior:
- Run
andgit status
to understand changesgit diff - Analyze the nature of changes
- Generate appropriate commit message
- Stage files if needed
- Create commit and report success
Example 2: Specific Type
User Input: "创建一个 fix 类型的 commit"
Expected Behavior:
- 检查当前的改动
- 确认这些改动符合 "fix" 类型
- 生成格式为
的提交信息fix(scope): 描述 - 执行提交并报告结果