关于 gitclaw-backup
用于将 `/home/node/.openclaw/` 备份到 GitHub 仓库的技能,供维护该工作区备份的用户使用。它通过 Git 同步变更,支持定时运行、排除规则和状态检查。
主要功能
- 01将工作区变更提交并推送至 GitHub
- 02每日 UTC 16:00 定时备份
- 03使用锁避免并发运行
- 04按 `.gitignore` 排除文件
- 05记录日志并检查 Git 状态
适用场景
- 01每日备份 OpenClaw 工作区
- 02手动运行脚本同步变更
- 03查看最近备份记录和未提交变更
- 04排除不应纳入备份的文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ blessonism/ openclaw-skills --skill gitclaw-backup安装后在 Claude Code 中输入/gitclaw-backup确认已加载。
详细介绍
GitClaw 备份
通过 git 将 /home/node/.openclaw/ 完整备份到 GitHub。
快速参考
- 仓库:
https://github.com/blessonism/openclaw-backup.git - 分支:
main - 脚本:
/home/node/.openclaw/gitclaw/auto_backup.sh - Cron:
daily-workspace-backup— 每天 UTC 16:00(北京时间 0:00) - 排除规则:
/home/node/.openclaw/.gitignore
手动同步
直接运行备份脚本:
bash /home/node/.openclaw/gitclaw/auto_backup.sh
脚本行为:
- 基于锁运行(防止并发运行)
- 暂存所有更改(
git add -A),遵循.gitignore - 没有更改时跳过提交
- 推送到
origin main - 将日志写入
/home/node/.openclaw/gitclaw/backup.log
同步后响应
成功同步后,回复中始终包含指向最新 commit 的可点击链接:
# Get the latest commit short hash
cd /home/node/.openclaw && git log --oneline -1
然后按如下格式回复:
✅ 同步完成 — 查看 commit
- 如果没有检测到更改,请报告“无变更,跳过”(无需链接)。
- 如果推送失败,请报告错误并提供故障排除建议。
检查状态
# Last backup log
tail -5 /home/node/.openclaw/gitclaw/backup.log
# Git status (uncommitted changes)
cd /home/node/.openclaw && git status --short
# Recent commits
cd /home/node/.openclaw && git log --oneline -5
从备份中排除文件
编辑 /home/node/.openclaw/.gitignore — 使用标准的 gitignore 语法。
当前值得注意的排除项:workspace/images/、workspace/node_modules/、workspace/.micromamba/、workspace/bin/、大型二进制文件。
故障排除
- 日志中出现 "already running" →
/home/node/.openclaw/gitclaw/lock/中存在过期锁,请将其删除:rmdir /home/node/.openclaw/gitclaw/lock - 推送被拒绝 → 远程可能执行了强制推送,或历史记录已分叉;使用
git log --oneline -5 origin/main检查 - 身份验证失败 → 凭据位于
~/.git-credentials;使用git credential fill <<< "host=github.com"验证
评论
支持 Markdown