novel-doomsday-resurgence/.novel-sync-temp/scripts/git-auto-sync.sh
唐天洛 5dc8c00de0 feat(sync): 固化小说内容到Git仓库
📚 小说内容:
- 《末日重生-开局囤货十亿物资》33章
- 完整的状态文件、记忆索引、钩子系统

🛠️ 系统配置:
- 版本控制管理系统
- 自动化脚本系统
- 质量监控系统

🧠 固化记忆:
- 长期记忆文件
- 系统配置文档
- 恢复流程指南

💾 数据安全:
- 本地备份系统
- Git版本控制
- 远程同步机制

同步时间: 2026-03-30 16:25:35
系统状态: inkos正常运行中 (PID: 1433309)
创作进度: 第33章《油粮》创作中
2026-03-30 16:25:35 +08:00

53 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# 自动同步脚本
cd /root/.openclaw/workspace
echo "[$(date '+%Y-%m-%d %H:%M:%S')] 🔄 开始自动同步..."
# 1. 先尝试拉取远程更新(如果存在)
if git remote get-url origin >/dev/null 2>&1; then
echo " 📡 检查远程更新..."
git fetch origin
# 检查是否有冲突
LOCAL=$(git rev-parse @)
REMOTE=$(git rev-parse @{u} 2>/dev/null || echo "")
BASE=$(git merge-base @ @{u} 2>/dev/null || echo "")
if [ -z "$REMOTE" ]; then
echo " ⚠️ 首次推送,需要手动设置"
elif [ "$LOCAL" = "$REMOTE" ]; then
echo " ✅ 本地与远程一致"
elif [ "$LOCAL" = "$BASE" ]; then
echo " 🔄 拉取远程更新..."
git pull origin master
echo " ✅ 更新完成"
elif [ "$REMOTE" = "$BASE" ]; then
echo " 🚀 推送本地变更..."
git push origin master
echo " ✅ 推送完成"
else
echo " ⚠️ 检测到冲突,需要手动处理"
echo " 📝 请执行: cd /root/.openclaw/workspace && git status"
fi
else
echo " ⚠️ 未配置远程仓库"
echo " 📝 请先配置: git remote add origin <url>"
fi
# 2. 如果有未提交的变更,自动提交
if ! git diff --quiet; then
echo " 📝 提交本地变更..."
git add .
git commit -m "chore(auto-sync): 自动提交未保存的变更 $(date '+%Y-%m-%d %H:%M')"
echo " ✅ 本地变更已提交"
# 如果有远程仓库,推送
if git remote get-url origin >/dev/null 2>&1; then
echo " 🚀 推送到远程..."
git push origin master
fi
fi
echo "[$(date '+%Y-%m-%d %H:%M:%S')] 🎉 自动同步完成"