mcpField
L
ln-003-push-all

ln-003-push-all

github.com/levnikolaevich开发584102 次安装2 天前更新
代码仓库

关于 ln-003-push-all

独立的 Skill,按单一工作流暂存、提交并推送仓库中的所有现有变更。提交前还会检查文档、变更日志影响并运行项目 Linter。

主要功能

  1. 01检查已暂存、未暂存及未跟踪变更
  2. 02检查文档与变更日志影响
  3. 03发现并运行项目 Linter
  4. 04暂存全部变更并创建提交
  5. 05推送到当前跟踪分支

适用场景

  1. 01在会话结束时推送累积变更
  2. 02提交一组已准备就绪的完整变更
  3. 03完成 Lint 和文档检查后发布变更

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-003-push-all

安装后在 Claude Code 中输入/ln-003-push-all确认已加载。

详细介绍

路径: 文件路径(shared/、references/、../ln-*)相对于 skills 仓库根目录。如果在 CWD 中未找到,请定位此 SKILL.md 所在目录,并向上一级找到仓库根目录。

Push All(独立工具)

类型: 独立工具
类别: 0XX Shared

在一次操作中,将所有当前更改(已暂存、未暂存、未跟踪)提交并推送到远程仓库。


何时使用此技能

  • 无需手动暂存,快速推送所有累积的更改
  • 会话结束时,一次性提交所有已准备就绪的更改
  • 任何需要执行 git add -A && git commit && git push 的情况

工作流

Analyze → Doc Check → CHANGELOG → Lint Check → Stage → Commit → Push → Report
阶段 1:分析更改
  1. 运行 git diff --stat 和 git status,了解所有更改(已暂存、未暂存、未跟踪)
  2. 确认更改内容及原因
阶段 2:检查文档

检查是否需要更新相关文档:

更改类型操作
代码行为发生变化更新受影响的文档、注释和示例
添加了新文件或文件夹更新相关索引或列表部分
配置文件发生变化检查 README 或设置文档
不影响文档跳过

跳过: 版本号升级(SKILL.md 中的版本字段、README 徽章)——仅在用户明确要求时执行。

阶段 3:更新 CHANGELOG

如果存在 CHANGELOG.md,且更改较为重要(不只是 lint 或格式修复):

  1. 检查今天的日期是否已有条目(## YYYY-MM-DD)
  2. 如果有——在现有条目中追加要点
  3. 如果没有——新增 ## YYYY-MM-DD 条目(最新的排在最前)
  4. 最多写 5 条,每条均以 - **粗体标签** — 描述 开头
  5. 仅记录用户可见或架构层面的重要更改。跳过:重新编号、内部重构、结构修复、去重
纳入跳过
新功能 / 新技能重新编号、重命名
工作流变更内部重构(D1-D9 修复)
破坏性变更去重处理
新集成参考文件迁移
用户可感知的性能改进Token 效率数据

跳过条件: 项目中没有 CHANGELOG.md,或更改无关紧要(仅空白字符、lint 自动修复)。

阶段 4:Lint 检查

必须阅读: shared/references/ci_tool_detection.md(发现层级 + 命令注册表)

根据 ci_tool_detection.md 的要求,在提交前发现并运行项目的 linter。

步骤 1:发现 linter 配置——先检查 docs/project/runbook.md 中是否有明确的 lint/format 命令(其优先级高于自动检测),然后遵循 ci_tool_detection.md 中的发现层级。还要检查 CLAUDE.md、README.md 和 CONTRIBUTING.md 中的 lint 说明。

步骤 2:运行 linter 并自动修复

  1. 使用 --fix 标志(或 ci_tool_detection.md 自动修复列中指定的等效选项)运行发现的 lint 命令
  2. 如果 linter 报告了无法自动修复的错误——手动修复
  3. 如果项目中没有找到 linter 配置——跳过此阶段(记录:“未找到 linter 配置,跳过”) 步骤 3:验证
  4. 不带 --fix 重新运行 linter,确认错误数为零
  5. 如果尝试修复 2 次后仍有错误——向用户报告剩余错误并继续
阶段 5:暂存并提交
  1. 运行 git add -A 暂存所有内容
  2. 运行 git diff --cached --stat,显示将要提交的内容
  3. 运行 git log --oneline -3,遵循近期提交的风格
  4. 撰写简洁的提交消息,总结所有更改
  5. 提交时附上 Co-Authored-By: Claude Opus 4.6 <[email protected]>
阶段 6:推送并报告
  1. 推送到当前分支的远程跟踪分支
  2. 报告:分支名称、提交哈希、更改文件数

关键规则

  • 暂存所有更改: git add -A — 不要部分提交
  • 遵循提交风格: 遵循项目现有的提交信息约定
  • 共同作者标记: 始终包含 Co-Authored-By 行
  • 不要更新版本号: 除非明确要求,否则跳过 CHANGELOG/版本更新
  • 提交前运行 Lint: 始终尝试查找 Lint 配置;如果未找到配置,则跳过

完成定义

  • 所有更改均已暂存(未跟踪和已修改的文件)
  • 已创建描述清晰的提交
  • 已成功推送到远程仓库

版本: 1.0.0 最后更新: 2026-02-12

评论

支持 Markdown