🚀 快速安装

复制以下命令并运行,立即安装此 Skill:

npx @anthropic-ai/skills install github/awesome-copilot/git-commit

💡 提示:需要 Node.js 和 NPM

使用约定式提交进行 Git 提交

概述

使用约定式提交规范创建标准化、语义化的 git 提交。分析实际的差异内容以确定适当的类型、范围和消息。

约定式提交格式

<类型>[可选范围]: <描述>

[可选正文]

[可选脚注]

提交类型

类型 用途
feat 新功能
fix 错误修复
docs 仅文档
style 格式化/样式(不改变逻辑)
refactor 代码重构(非功能/修复)
perf 性能改进
test 添加/更新测试
build 构建系统/依赖项
ci 持续集成/配置更改
chore 维护/杂项
revert 还原提交

破坏性变更

# 在类型/范围后加感叹号
feat!: 移除已弃用的端点

# 使用破坏性变更脚注
feat: 允许配置扩展其他配置

破坏性变更: `extends` 键的行为已更改

工作流程

1. 分析差异

# 如果文件已暂存,使用已暂存的差异
git diff --staged

# 如果无暂存文件,使用工作区的差异
git diff

# 同时检查状态
git status --porcelain

2. 暂存文件(如果需要)

如果没有暂存文件,或者想要以不同方式分组更改:

# 暂存特定文件
git add 路径/到/文件1 路径/到/文件2

# 按模式暂存
git add *.test.*
git add src/components/*

# 交互式暂存
git add -p

切勿提交机密信息(.env、credentials.json、私钥)。

3. 生成提交消息

分析差异以确定:

  • 类型:这是哪种类型的更改?
  • 范围:影响了哪个区域/模块?
  • 描述:更改内容的一行摘要(现在时,祈使语气,少于72字符)

4. 执行提交

# 单行
git commit -m "<类型>[范围]: <描述>"

# 多行包含正文/脚注
git commit -m "$(cat <<'EOF'
<类型>[范围]: <描述>

<可选正文>

<可选脚注>
EOF
)"

最佳实践

  • 每个提交一个逻辑更改
  • 现在时:“添加”而非“添加了”
  • 祈使语气:“修复错误”而非“修复了错误”
  • 引用问题:关闭 #123参考 #456
  • 描述保持在 72 字符以内

Git 安全协议

  • 切勿更新 git 配置
  • 未经明确请求,切勿运行破坏性命令(–force、hard reset)
  • 除非用户要求,切勿跳过钩子(–no-verify)
  • 切勿强制推送到主分支
  • 如果提交因钩子失败,请修复并创建新提交(不要修改)

📄 原始文档

完整文档(英文):

https://skills.sh/github/awesome-copilot/git-commit

💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。