com um clique
dotfiles-git-commit
在 dotfiles 项目中,当我要求提交修改时使用
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
在 dotfiles 项目中,当我要求提交修改时使用
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Write and maintain changelogs for sphinxnotes projects. Covers preparing release changelogs, adding incremental entries, and the ``.. version::`` directive reference.
Release workflow for sphinxnotes/cookiecutter generated projects. Use when the user asks to release a new stable version.
Use when updating a sphinxnotes project from the cookiecutter template, resolving cruft update conflicts (.rej files), and completing template sync
General git commit workflow, lower priority — only use when user asks to commit changes, and no other commit skill is active
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
提供 AI 模型 co-author 信息,供其他 git commit skill 引用
| name | dotfiles-git-commit |
| description | 在 dotfiles 项目中,当我要求提交修改时使用 |
在 dotfiles 项目中,当我说「提交」「commit」且 staging area 包含多个不同软件/工具的改动时触发。
以下情况不触发本 skill,改用 general-git-commit:
README.rst、Makefile、deploy.sh、.gitignore、.gitattributes、archpkgs.txt 等)git diff --cached --name-only
根据文件路径提取所属应用作为分组依据:
| 路径模式 | 分组名称/scope |
|---|---|
config/<app>/ | 取 <app> 名,如 nvim、sway、waybar、kitty、tmux、yazi、fzf、mako、alacritty、fontconfig、srain、glow、vinput、wireplumber |
config/chromium-flags.conf | chromium |
home/.* | 按文件名取,如 zshrc → sh、gitconfig → git、vimrc → vim、bashrc → sh |
bin/ | bin |
agents/ | 按子路径取,如 agents/AGENTS.md → agents、agents/skills/ → skills |
README.rst | README |
.gitignore、.gitattributes | gitattributes 或 gitignore |
Makefile、deploy.sh、archpkgs.txt 等根目录文件 | dotfiles 或 scripts |
同一分组的文件合并在一个 commit 中。
git diff --cached
理解每组的改动目的。
计划创建以下 commit:
Commit 1: nvim: Add treesitter config for lua
- config/nvim/lua/plugin/treesitter.lua
Commit 2: sway: Adjust workspace layout
- config/sway/config
- config/sway/init.sh
必须等我确认后再执行。 若我明确说「直接提交」或你当前不被允许和用户交互,跳过确认。
git commit -m "<scope>: <description>" -- <文件列表>
commit message 规范:
<scope>: <英文描述>,scope 小写在 commit body 中附加 co-author 信息,参见 model-co-authors skill:
git commit -m "sway: Adjust workspace layout" -m "" -m "Co-authored-by: DeepSeek <service@deepseek.com>" -- config/sway/config
完成后展示:
✅ 已创建 N 个 commit:
abc1234 nvim: Add treesitter config for lua
def5678 sway: Adjust workspace layout
| 错误 | 正确做法 |
|---|---|
| 同一软件的多个改动分散在不同 commit | 同一分组合并为一个 commit |
| 不同软件的改动混在同一个 commit | 按软件拆分 |
| 项目级文件与某软件文件混在一起 | 项目级文件单独一个 commit |
| commit message 写中文 | 按历史风格写英文 |
Staging:
config/nvim/lua/plugin/treesitter.lua — 新增 treesitter 配置config/sway/config — 调整工作区布局config/sway/init.sh — 同步修改启动脚本home/.zshrc — 添加别名分组:
nvim → config/nvim/lua/plugin/treesitter.luasway → config/sway/config + config/sway/init.shsh → home/.zshrc展示:
Commit 1: nvim: Add treesitter config for lua
- config/nvim/lua/plugin/treesitter.lua
Commit 2: sway: Adjust workspace layout and startup
- config/sway/config
- config/sway/init.sh
Commit 3: sh: Add new aliases
- home/.zshrc