返回顶部
o

openclaw-git-backupOpenClaw Git备份

Create, update, validate, or troubleshoot automated git backup workflows for OpenClaw repositories. Use when a user wants a scheduled commit-and-push backup job, wants commit messages to summarize added or modified or deleted files, needs git credential setup for HTTPS pushes, or needs to debug why an OpenClaw cron backup is not running or not pushing.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.1.0
安全检测
已通过
125
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

openclaw-git-backup

OpenClaw Git 备份

使用此技能为 OpenClaw 仓库构建可复用的夜间 git 备份工作流。

此工作流的功能:

  • - 暂存仓库变更
  • 可选地排除调度器噪音或其他路径
  • 仅在存在已跟踪变更时创建提交
  • 使用 +添加 ~修改 -删除 计数编写提交主题
  • 编写列出已变更文件的提交正文
  • 即使没有新提交也会执行 git push,以便推送较早的未推送提交
  • 与 OpenClaw cron 集成,在设置或编辑后应始终强制运行一次

需要确认的输入

在更改任何内容之前,请确认以下值:

  • - 仓库根目录,例如
  • 运行时脚本路径,例如
  • 时区,例如
  • 远程名称,通常为 origin
  • 分支行为:当前分支或显式分支
  • 排除模式(如果有)
  • 是否需要 HTTPS 令牌设置

如果用户已暗示这些值,则直接进行,无需将其变成问答环节。

默认值

新安装的合理默认值:

  • - 远程:origin
  • 时区:UTC
  • 作者名称:OpenClaw Backup
  • 作者邮箱:backup@local
  • 分支:当前分支,分离头指针状态下为 main
  • 排除模式:无,除非仓库存在调度器自噪音

捆绑脚本

此技能包含 scripts/nightlygitbackup.sh。

优先使用捆绑脚本作为实现源,然后将其复制到用户希望 cron 作业调用的运行时位置。

典型安装步骤:

bash
install -D -m 755 /scripts/nightlygitbackup.sh
bash -n

配置模型

捆绑脚本支持以下环境变量:

  • - BACKUPREMOTE — 默认为 origin
  • BACKUPBRANCH — 可选的目标分支
  • BACKUPTZ — 默认为 UTC
  • BACKUPAUTHORNAME — 默认为 OpenClaw Backup
  • BACKUPAUTHOREMAIL — 默认为 backup@local
  • BACKUPEXCLUDES — 逗号分隔的 git pathspec 排除模式,例如 cron,cron/,.cache,.cache/

第一个位置参数是仓库路径。如果省略,脚本将使用 BACKUP_REPO 或当前目录。

推荐流程

1. 检查当前状态

检查:

  • - git -C rev-parse --show-toplevel
  • git -C status --short --branch
  • git -C remote -v
  • openclaw cron list 或等效的 cron 列表

2. 安装或更新运行时脚本

将捆绑脚本复制到 cron 作业将执行的运行时路径。

3. 仅在需要时配置推送认证

如果 HTTPS 推送已正常工作,则保持认证不变。

如果用户明确提供 GitHub HTTPS 令牌,优先使用仓库本地凭据存储,而不是将凭据嵌入远程 URL:

bash
git -C config credential.helper store --file=/.git/credentials
git -C config credential.useHttpPath true
printf protocol=https\nhost=github.com\npath=OWNER/REPO.git\nusername=x-access-token\npassword=TOKEN\n | git -C credential approve
chmod 600 /.git/credentials
git -C ls-remote --heads

规则:

  • - 切勿将令牌写入远程 URL
  • 切勿在此技能中存储真实令牌
  • 将凭据文件权限收紧为 600

4. 创建或更新 cron 作业

阅读 references/cron-job-template.md。

设置作业使其执行:

bash
bash -lc

典型 cron 设置:

  • - 隔离的 agentTurn
  • 低思考量
  • 超时 600 秒
  • 静默投递,除非用户需要警报

5. 立即强制运行一次

不要止步于作业已创建。始终测试完整路径。

强制运行后,检查:

  • - 最新提交主题
  • 最新提交正文
  • git status --short --branch
  • git rev-list --left-right --count /...HEAD(如果预期有推送)

验证检查清单

脚本

  • - bash -n

Git

  • - git -C status --short --branch
  • git -C remote -v
  • git -C ls-remote --heads

Cron

  • - 列出作业
  • 强制运行备份作业
  • 检查最近的运行结果

预期结果

  • - 如果排除后存在暂存变更,则创建并推送新提交
  • 如果没有新变更,仍执行推送以刷新较早的本地提交
  • 排除模式防止调度器自噪音生成虚假备份提交

提交消息约定

捆绑脚本编写:

主题

text
backup: snapshot YYYY-MM-DD HH:MM:SS +0000 | +A ~M -D

正文

text
Added(n)

  • - ...

Modified(n)

  • - ...

Deleted(n)

  • - ...

Renamed(n)

  • - old -> new

保持正文客观且以文件为导向。

常见陷阱

调度器自噪音

某些仓库包含每次运行都会变化的调度器状态。使用 BACKUP_EXCLUDES 显式排除。

示例:

bash
BACKUP_EXCLUDES=cron,cron/

仓库外的运行时状态

Git 仅备份目标仓库内的文件。如果工作流还依赖于仓库外的目录,除非用户显式添加第二个同步或将它们镜像到仓库中,否则这些目录不会被覆盖。

参见 references/backup-scope.md。

错误成功标准

cron 作业存在是不够的。

真正的成功条件是:

  1. 1. 强制运行有效
  2. 提交格式正确
  3. 推送成功
  4. 远程同步完成

输出风格

报告时保持具体:

  • - 配置了什么
  • 测试了什么
  • 推送是否成功
  • 哪些内容仍在备份范围之外

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 openclaw-git-backup-1776019509 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 openclaw-git-backup-1776019509 技能

通过命令行安装

skillhub install openclaw-git-backup-1776019509

下载

⬇ 下载 openclaw-git-backup v0.1.0(免费)

文件大小: 6.22 KB | 发布时间: 2026-4-13 11:18

v0.1.0 最新 2026-4-13 11:18
Initial public release

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部