关于 snapshot-push
用于将 bonbon-ai 外层仓库作为快照推送到 GitLab 的专用技能,也包含 be/ 和 fe/ 子仓库内容。它会核验指定仓库根目录、运行现有脚本,并报告提交哈希和变更文件数。
主要功能
- 01仅限 bonbon-ai 仓库根目录
- 02快照包含 be/ 与 fe/ 内容
- 03暂时隐藏并恢复嵌套 .git 目录
- 04可向脚本传入提交说明
- 05报告提交哈希与变更文件数
- 06根目录错误或推送失败时停止
适用场景
- 01推送合并的 bonbon-ai 仓库快照
- 02在外层仓库推送中纳入 be/ 和 fe/ 文件
- 03检查快照推送结果与错误
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ rheinmir/ setup --skill snapshot-push安装后在 Claude Code 中输入/snapshot-push确认已加载。
详细介绍
技能:snapshot-push
内容
用途与上下文
- **用途:**将整个外层仓库
bonbon-ai作为快照推送到 GitLab——包括be/和fe/的内容(它们是拥有独立.git的子仓库)。使用脚本scripts/snapshot-push.sh自动隐藏/恢复.git目录。 - 触发条件(何时使用):“推送快照”“快照推送”“推送外层仓库”。
- **非目标:**不单独推送子仓库
be//fe/,不适用于bonbon-ai以外的仓库。
心智模型
仓库根目录 bonbon-ai → snapshot-push.sh(隐藏 be/ fe/ 的 .git → 提交 + 推送 → 恢复 .git)→ 提交哈希 + 更改的文件数。
输入和输出约定
| 字段 | 必填? | 含义 | |
|---|---|---|---|
| 输入 | message | 否 | 可选的提交消息,传递给脚本 |
| 输出 | 推送结果 | 是 | 向用户报告提交哈希 + 更改的文件数 |
规则和能力
- RULE-01(必须):运行脚本前,确认当前位于正确的仓库根目录(
/Volumes/giatbhSSD(APFS)/workspace/bonbon-ai)。 - 能力:通过现有脚本读取/写入外层仓库的 git;写入 GitLab 远程端(推送)。
失败边界
- 不在正确的仓库根目录 → 受阻,不运行脚本。
- 脚本出错(推送失败)→ 失败,向用户报告原始错误输出。
操作方式
主要工作流
| 步骤 | 类型 | 输入 | 操作 | 输出/退出状态 | 失败/后续操作 |
|---|---|---|---|---|---|
| W01 | 确定性 | cwd | 确认仓库根目录 | 位于正确根目录 | 错误 → 受阻 |
| W02 | 有副作用 | message | 运行脚本 snapshot-push | 提交 + 推送 | 出错 → 失败 |
| W03 | 确定性 | 脚本输出 | 报告提交哈希 + 更改的文件数 | 报告 | — |
各步骤详情(W01–W03 的事实来源):
- 确认当前位于正确的仓库根目录(
/Volumes/giatbhSSD(APFS)/workspace/bonbon-ai) - 运行:
bash scripts/snapshot-push.sh "<optional message>" - 报告结果:提交哈希 + 更改的文件数
分支
此版本没有分支。
验证与停止
成功 = 脚本返回 rc 0 并输出提交哈希。推送出错时不自动重试。
示例
- **正向:**在
/Volumes/giatbhSSD(APFS)/workspace/bonbon-ai执行“推送快照” →bash scripts/snapshot-push.sh "snapshot"→ 报告提交哈希 + 更改的文件数,包括be/和fe/中的文件。 - **边界/失败:**在 cwd 为
be/时调用 → W01 发现当前目录不是仓库根目录 → 停止,提示用户切换回根目录,不运行脚本。
评论
支持 Markdown