Skip to main content

commit

Commit current changes with a clear, descriptive message

Informações da origem

Repositório
NVIDIA-NeMo/DataDesigner
Última atividade na origem
25 de março de 2026 às 18:38
Idioma detectado do SKILL.md
inglês
Estrelas
2.371
Forks
235

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
commit
description
Commit current changes with a clear, descriptive message
argument-hint
["special instructions"]
disable-model-invocation
true
metadata
{"internal":true}
# Commit Changes Commit the current staged/unstaged changes with a well-crafted commit message. ## Arguments `$ARGUMENTS` can be used for special instructions, such as: - Guiding the message: "emphasize the breaking change" - Adding context: "this fixes issue #123" - Requesting amend: "amend the previous commit" ## Step 1: Gather Information Run these commands in parallel to understand the changes: 1. **Git status**: `git status --porcelain` (check for staged/unstaged changes) 2. **Staged diff**: `git diff --cached` (what will be committed if there are staged changes) 3. **Unstaged diff**: `git diff` (what's modified but not staged) 4. **Recent commits**: `git log -5 --oneline` (to match existing commit style) **Important checks:** - If no changes exist (nothing staged or unstaged), inform the user there's nothing to commit - If there are unstaged changes but nothing staged, stage all changes with `git add -A` (or ask user if they want to selectively stage) - If there are both staged and unstaged changes, ask user if they want to include unstaged changes ## Step 2: Analyze Changes Review the diff to understand: - **What** changed (files, functions, features) - **Why** it changed (bug fix, new feature, refactor, etc.) - **Impact** (breaking changes, dependencies, configuration) ## Step 3: Generate Commit Message ### Message Guidelines 1. **Subject line**: - Use imperative mood ("add feature" not "added feature") - Keep under 50 characters (hard limit: 72) - Don't end with a period - Use lowercase for the first letter 2. **Body** (if needed for complex changes): - Separate from subject with blank line - Wrap at 72 characters - Explain *what* and *why*, not *how* - Use bullet points for multiple items 3. **Footer** (if needed): - Reference issues: `Fixes #123`, `Closes #456` ### Examples **Simple change:** ``` add user authentication endpoint ``` **Change with body:** ``` add rate limiting to public endpoints - Implement token bucket algorithm - Add configurable limits per endpoint - Include rate limit headers in responses Closes #234 ``` ## Step 4: Create the Commit 1. **Stage changes** (if needed): ```bash git add -A ``` Or stage specific files if user requested selective staging. 2. **Create commit** using HEREDOC for proper formatting: ```bash git commit -m "$(cat <<'EOF' <description> <body if needed> <footer if needed> EOF )" ``` 3. **Verify** the commit was created: ```bash git log -1 --oneline ``` 4. **Report** the commit hash and message to the user. ## Edge Cases - **No changes**: Inform user there's nothing to commit - **Amend requested**: Use `git commit --amend` (only if explicitly requested in arguments) - **Large changes**: Suggest breaking into multiple commits if changes span unrelated areas - **Merge conflicts**: Inform user and provide guidance on resolution - **Pre-commit hooks fail**: Report the failure and suggest fixes
Ver no GitHub