openclaw的git备份策略全解析-skill已上线

作者:

文章目录
  • # 自动备份 openclaw backup create # 指定输出目录 openclaw backup create –output <path> # 排除工作空间 openclaw backup create –no-include-workspace # 只备份配置文件 openclaw backup create –only-config # 预览备份计划 openclaw backup create –dry-run # 验证备份 openclaw backup create –verify git备份的优势是压缩文件备份没法比拟的:
  • 在.openclaw目录创建gitrepo,添加.gitignore忽略掉workspace和相关文件,推送到配置仓库 在workspace中已经由初始化的 .git 目录,映射到远程仓库,推送到workspace仓库 有几个agent,就建几个仓库 写脚本自动备份,代码就不贴了,已上传clawhub:skill地址: openclaw-gitbak未安装clawhub的童鞋执行以下指令: npm install -g clawhub clawhub install “openclaw-gitbak” 配置自己的workspace和git仓库: 告诉openclaw:这是我的workspace及对应的git仓库列表,请配置/openclaw-gitbak技能,然后粘贴信息 或者手工修改更快捷:~/.openclaw/skills/openclaw-gitbak/scrips/config.sh 改成你自己的就好了 执行备份: 首次备份输入:/openclaw-gitbak备份所有(openclaw会记住你的备份手段) 以后备份输入:备份所有/备份workspace/备份配置 首次拉取输入:/openclaw-gitbak恢复所有(openclaw会记住你的恢复手段) 以后恢复输入:恢复所有/恢复workspace/恢复配置 这样也方便在本地修改,我这边win11,大概是这个样子: 再用2个脚本执行本地批量提交和拉取:pull_all.ps1(注意将丢失所有修改) $count = 0 Get-ChildItem -Directory | ForEach-Object { $dir = $_ if (Test-Path “$($dir.FullName).git”) { $count++ $repoName = $dir.Name Write-Host “==> $count Pulling $repoName” Push-Location $dir.FullName git reset –hard git pull Pop-Location Write-Host “” } } Write-Host “Done!” push_all.ps1 $count = 0 $msg = Read-Host “Enter commit message” Get-ChildItem -Directory | ForEach-Object { $dir = $_ if (Test-Path “$($dir.FullName).git”) { $count++ $repoName = $dir.Name Write-Host “==> $count Pushing $repoName” Push-Location $dir.FullName git add . git commit -m “$msg” git push Pop-Location Write-Host “” } } Write-Host “Done!” 到此这篇关于openclaw的git备份策略全解析-skill已上线的文章就介绍到这了,更多相关openclaw git备份策略内容请搜索风君子博客以前的文章或继续浏览下面的相关文章,希望大家以后多多支持风君子博客!
  • 目录
    • openclaw自带备份命令(没有restore指令,不完善X)
    • git备份思路:配置和workspace分开备份,具体:

    没有一个备份手段,openclaw都不敢用,生怕下一秒就死翘翘了,所以今天我们搞定备份:

    # 自动备份
    openclaw backup create
    # 指定输出目录
    openclaw backup create --output <path>
    # 排除工作空间
    openclaw backup create --no-include-workspace
    # 只备份配置文件
    openclaw backup create --only-config
    # 预览备份计划
    openclaw backup create --dry-run
    # 验证备份
    openclaw backup create --verify

    git备份的优势是压缩文件备份没法比拟的:

    • 在.openclaw目录创建gitrepo,添加.gitignore忽略掉workspace和相关文件,推送到配置仓库
    • 在workspace中已经由初始化的 .git 目录,映射到远程仓库,推送到workspace仓库
    • 有几个agent,就建几个仓库
    • 写脚本自动备份,代码就不贴了,已上传clawhub:
      skill地址: openclaw-gitbak
      未安装clawhub的童鞋执行以下指令:
    npm install -g clawhub
    clawhub install "openclaw-gitbak"

    配置自己的workspace和git仓库:

    告诉openclaw:这是我的workspace及对应的git仓库列表,请配置/openclaw-gitbak技能,然后粘贴信息
    或者手工修改更快捷:~/.openclaw/skills/openclaw-gitbak/scrips/config.sh 改成你自己的就好了

    执行备份:

    首次备份输入:/openclaw-gitbak备份所有(openclaw会记住你的备份手段)
    以后备份输入:备份所有/备份workspace/备份配置
    首次拉取输入:/openclaw-gitbak恢复所有(openclaw会记住你的恢复手段)
    以后恢复输入:恢复所有/恢复workspace/恢复配置

    这样也方便在本地修改,我这边win11,大概是这个样子:

    再用2个脚本执行本地批量提交和拉取:
    pull_all.ps1(注意将丢失所有修改)

    $count = 0
    Get-ChildItem -Directory | ForEach-Object {
        $dir = $_
        if (Test-Path "$($dir.FullName).git") {
            $count++
            $repoName = $dir.Name
            Write-Host "==> $count Pulling $repoName"
            Push-Location $dir.FullName
            git reset --hard
            git pull
            Pop-Location
            Write-Host ""
        }
    }
    Write-Host "Done!"

    push_all.ps1

    $count = 0
    $msg = Read-Host "Enter commit message"
    Get-ChildItem -Directory | ForEach-Object {
        $dir = $_
        if (Test-Path "$($dir.FullName).git") {
            $count++
            $repoName = $dir.Name
            Write-Host "==> $count Pushing $repoName"
            Push-Location $dir.FullName
            git add .        
            git commit -m "$msg"
            git push
            Pop-Location
            Write-Host ""
        }
    }
    Write-Host "Done!"

    到此这篇关于openclaw的git备份策略全解析-skill已上线的文章就介绍到这了,更多相关openclaw git备份策略内容请搜索风君子博客以前的文章或继续浏览下面的相关文章,希望大家以后多多支持风君子博客!

    站内搜索