🔄 卡若AI 同步 2026-02-15 23:43 | 变更 5 个文件 | 排除 >20MB: 4 个
Some checks failed
Sync GitHub to CKB NAS Gitea / sync (push) Has been cancelled

This commit is contained in:
2026-02-15 23:43:09 +08:00
parent 3e17b56617
commit 49c722c6d8
5 changed files with 124 additions and 2 deletions

View File

@@ -116,7 +116,18 @@ git push -u gitea main
---
## 十、上传时同步的板块卡若AI 有更新就上传
## 十、本地有更新 → 同步到 Gitea实时协同
| 项目 | 脚本 | 说明 |
|------|------|------|
| 卡若AI | `bash _共享模块/auto_sync_gitea.sh` | 代码+百科+代码管理 |
| 分布式算力矩阵 | `bash 01_卡资/_团队成员/金仓/Gitea管理/scripts/auto_sync_suanli_juzhen.sh` | 代码 |
**Webhook 说明**Webhook 是 Gitea→外部push 后通知飞书/触发部署),**不能**实现本地→Gitea。本地→Gitea 用上述脚本,可定时执行或对话结束时执行。详见 `references/Webhook与本地协同方案.md`
---
## 十、卡若AI 上传时同步的板块
执行 `bash _共享模块/auto_sync_gitea.sh` 时会:
@@ -132,7 +143,8 @@ git push -u gitea main
| 文档 | 路径 | 说明 |
|------|------|------|
| Gitea 推送手册 | `_共享模块/references/Gitea推送_卡若AI调用手册.md` | 卡若AI 调用、有更新就上传、代码管理 |
| Webhook与本地协同 | `Gitea管理/references/Webhook与本地协同方案.md` | 本地→Gitea、Webhook 用途、定时 sync |
| Gitea 推送手册 | `_共享模块/references/Gitea推送_卡若AI调用手册.md` | 卡若AI 调用、有更新就上传 |
| 工单/合并请求/Wiki/发布 | `_共享模块/references/Gitea_工单与合并请求使用说明.md` | 各功能使用说明 |
| 代码管理 | `_共享模块/工作台/代码管理.md` | 每次上传记录 |
| 账号与 API | `_共享模块/工作台/00_账号与API索引.md` § Gitea | 凭证 |

View File

@@ -0,0 +1,76 @@
# Gitea Webhook 与本地协同方案
> 目标Gitea 上项目与存客宝 NAS Gitea 实时同步,本地有更新即推送到 GiteaWebhook 负责下游通知。
---
## 一、角色分工
| 方向 | 实现方式 | Webhook 能否实现? |
|:-----|:---------|:-------------------|
| **本地 → Gitea** | 定时/对话结束执行 sync 脚本 | ❌ 不能Webhook 是 Gitea→外部 |
| **Gitea → 下游** | Webhook 通知外部 URL | ✅ 能 |
| **GitHub → Gitea** | NAS 上 sync_github_to_gitea.sh 每 30 分钟 | 已实现 |
---
## 二、本地有更新 → 同步到 Gitea
### 2.1 已纳入的项目与脚本
| 项目 | 脚本 | 说明 |
|------|------|------|
| 卡若AI | `_共享模块/auto_sync_gitea.sh` | 代码+百科+代码管理 |
| 分布式算力矩阵 | `Gitea管理/scripts/auto_sync_suanli_juzhen.sh` | 代码 |
### 2.2 定时执行(可选)
```bash
# 每 5 分钟同步 卡若AI
*/5 * * * * /bin/bash /Users/karuo/Documents/个人/卡若AI/_共享模块/auto_sync_gitea.sh
# 每 10 分钟同步 分布式算力矩阵
*/10 * * * * /bin/bash "/Users/karuo/Documents/个人/卡若AI/01_卡资/_团队成员/金仓/Gitea管理/scripts/auto_sync_suanli_juzhen.sh"
```
`crontab -e` 添加上述行,或使用 macOS launchd。
### 2.3 卡若AI 行为
对话或任务对 卡若AI / 分布式算力矩阵 产生变更后,在对话结束前执行对应 sync 脚本。
---
## 三、Webhook 用途Gitea → 外部)
Webhook 在 **Gitea 有 push/PR 等事件时** 向外部 URL 发 HTTP POST可用于
| 用途 | 目标 URL 示例 | 说明 |
|------|---------------|------|
| 飞书/钉钉通知 | 飞书机器人 Webhook | push 后通知团队 |
| 触发部署 | 自建服务 /deploy?repo=xxx | 收到 push 后拉取并部署 |
| 触发 NAS 拉取 | NAS 上的 HTTP 服务 | Gitea 有更新时拉取到指定目录 |
### 3.1 配置 Webhook
1. Gitea → 用户设置 → Web 钩子 → 添加 Web 钩子
2. 选「Gitea」或「HTTP」填目标 URL
3. 勾选触发事件push、pull request 等
4. 用户级钩子会对**所有拥有的仓库**生效
### 3.2 局限性
- **不能**实现:本地文件变化 → 自动 push 到 Gitea
- **能**实现Gitea 有 push → 通知/触发下游
---
## 四、整体流程
```
本地编辑 ──(定时/对话结束)──▶ sync 脚本 ──▶ push ──▶ Gitea
Webhook 通知外部
(飞书/部署/NAS拉取)
```

View File

@@ -0,0 +1,32 @@
#!/bin/bash
# 分布式算力矩阵 → Gitea 同步
# 本地有更新即推送到 open.quwanzhi.com:3000/fnvtk/suanli-juzhen
# 用法:定时执行 或 对话/任务结束后执行
REPO_DIR="/Users/karuo/Documents/1、金项目/3、自营项目/分布式算力矩阵"
REMOTE="gitea"
BRANCH="main"
MAX_SIZE_MB=5
mkdir -p "$REPO_DIR/00_agent对话记录"
LOG_FILE="$REPO_DIR/00_agent对话记录/sync.log"
log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" >> "$LOG_FILE" 2>/dev/null || true; }
cd "$REPO_DIR" || { log "错误:无法进入 $REPO_DIR"; exit 1; }
# 排除 >5MB
if [ -f ".gitignore" ] && grep -q "超过.*MB" .gitignore 2>/dev/null; then
LARGE=$(find . -type f -size +${MAX_SIZE_MB}M -not -path "./.git/*" 2>/dev/null | wc -l)
[ "$LARGE" -gt 0 ] && log "排除 ${LARGE} 个 >${MAX_SIZE_MB}MB 文件"
fi
git add -A 2>/dev/null
if git diff --cached --quiet 2>/dev/null; then
log "无变更,跳过"
exit 0
fi
CNT=$(git diff --cached --numstat | wc -l | tr -d ' ')
git commit -m "🔄 同步 $(date '+%Y-%m-%d %H:%M') | ${CNT} 个文件" --quiet 2>/dev/null || exit 1
git push "$REMOTE" "$BRANCH" --quiet 2>&1
[ $? -eq 0 ] && log "推送成功 ${CNT} 个文件" || log "推送失败"

View File

@@ -9,3 +9,4 @@
| 2026-02-15 23:26:43 | 🔄 卡若AI 同步 2026-02-15 23:26 | 变更 21 个文件 | 排除 >20MB: 4 个 |
| 2026-02-15 23:34:04 | 🔄 卡若AI 同步 2026-02-15 23:34 | 变更 7 个文件 | 排除 >20MB: 4 个 |
| 2026-02-15 23:38:04 | 🔄 卡若AI 同步 2026-02-15 23:38 | 变更 7 个文件 | 排除 >20MB: 4 个 |
| 2026-02-15 23:38:29 | 🔄 卡若AI 同步 2026-02-15 23:38 | 变更 4 个文件 | 排除 >20MB: 4 个 |

View File

@@ -12,3 +12,4 @@
|:---|:---|:---|:---|:---|
| 2026-02-15 23:34:04 | 成功 | 失败(百科未初始化或网络) | 🔄 卡若AI 同步 2026-02-15 23:34 | 变更 7 个文件 | 排除 >20MB: 4 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
| 2026-02-15 23:38:04 | 成功 | 失败(百科未初始化或网络) | 🔄 卡若AI 同步 2026-02-15 23:38 | 变更 7 个文件 | 排除 >20MB: 4 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
| 2026-02-15 23:38:29 | 成功 | 失败(百科未初始化或网络) | 🔄 卡若AI 同步 2026-02-15 23:38 | 变更 4 个文件 | 排除 >20MB: 4 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |