shuangyan-notebook/第五域 · Fifth Domain/⚒️ 铸渊·协作指令|GitHub ↔ Notion 桥接协议/🔧 Awen 仓库初始化指令 · GitHub Actions 模板方案 c7729b263ef446b8b1aaa04da51db1ae.md
Guanghu Domestic Migration a27e87cb99 chore: import sanitized domestic snapshot for REPO-007
Source snapshot: 97d7f0fae96dc04b7ddad56fc1db6a108ed662cc

[SEC-CLEAN] · pre-push-clean v1.0 · 109处敏感信息已自动转乱码
2026-07-17 15:59:55 +08:00

6.9 KiB
Raw Permalink Blame History

belongs_to
belongs_to
INDEX · 铸渊·协作指令GitHub ↔ Notion 桥接协议

🔧 Awen 仓库初始化指令 · GitHub Actions 模板方案


📋 总流程4步

  1. 创建仓库 guanghu-awen
  2. 添加 MAIN_REPO_TOKEN 密钥
  3. 创建 GitHub Actions 工作流文件
  4. 推送触发测试

Step 1 · 创建仓库

  1. 打开 https://github.com/new
  2. 仓库名:guanghu-awen
  3. 可见性:Private(推荐)或 Public
  4. 勾选 "Add a README file"
  5. 点击 Create repository

Step 2 · 添加 MAIN_REPO_TOKEN 密钥

冰朔操作:

冰朔已在主仓库 guanghulab 配置过 Token不需要重新生成

直接把已有的 MAIN_REPO_TOKEN 值发给 Awen 即可。

Awen 操作配置Secret

  1. 打开你的仓库:https://github.com/WENZHUOXI/guanghu-awen
  2. 点击 Settings → 左侧 Secrets and variablesActions
  3. 点击 New repository secret
  4. Name 填:MAIN_REPO_TOKEN
  5. Secret 填:冰朔给你的 Token
  6. 点击 Add secret

Step 3 · 创建 GitHub Actions 工作流

方法A网页直接创建推荐新手

  1. 打开你的仓库页面
  2. 点击 Add fileCreate new file
  3. 文件名输入:.github/workflows/bridge-sync.yml
  4. 粘贴以下内容:
# 🌊 光湖桥接同步工作流
# Awen 仓库 → 主仓库 guanghulab 同步
# 触发条件push 到 main 分支 / 手动触发 / 每天 09:00 UTC+8

name: "🌉 Bridge Sync to GuanghuLab"

on:
  push:
    branches: [main]
  workflow_dispatch:
  schedule:
    - cron: "0 1 * * *"  # UTC 01:00 = 北京时间 09:00

jobs:
  sync-to-main-repo:
    runs-on: ubuntu-latest
    steps:
      - name: "📥 Checkout Awen Repo"
        uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: "📋 Prepare Sync Payload"
        run: |
          echo "🌊 光湖桥接同步开始"
          echo "时间: $(TZ='Asia/Shanghai' date '+%Y-%m-%d %H:%M:%S CST')"
          echo "仓库: $GITHUB_REPOSITORY"
          echo "分支: $GITHUB_REF_NAME"
          echo "提交: $GITHUB_SHA"
          
          # 创建同步清单
          mkdir -p .sync-payload
          echo "{" > .sync-payload/manifest.json
          echo "  \"source\": \"$GITHUB_REPOSITORY\"," >> .sync-payload/manifest.json
          echo "  \"branch\": \"$GITHUB_REF_NAME\"," >> .sync-payload/manifest.json
          echo "  \"commit\": \"$GITHUB_SHA\"," >> .sync-payload/manifest.json
          echo "  \"timestamp\": \"$(date -u +%Y-%m-%dT%H:%M:%SZ)\"," >> .sync-payload/manifest.json
          echo "  \"developer\": \"awen\"" >> .sync-payload/manifest.json
          echo "}" >> .sync-payload/manifest.json
          
          cat .sync-payload/manifest.json

      - name: "🌉 Sync to GuanghuLab Main Repo"
        env:
          MAIN_REPO_TOKEN: $\{\{ secrets.MAIN_REPO_TOKEN \}\}
        run: |
          # 配置 Git
          git config --global user.name "guanghu-awen-bridge"
          git config --global user.email "awen-bridge@guanghu.dev"
          
          # 克隆主仓库
          git clone https://x-access-token:${MAIN_REPO_TOKEN}@github.com/qinfendebingshuo/guanghulab.git /tmp/main-repo
          
          # 创建 Awen 同步分支目录
          mkdir -p /tmp/main-repo/federation/awen
          
          # 复制同步清单
          cp .sync-payload/manifest.json /tmp/main-repo/federation/awen/latest-sync.json
          
          # 复制仓库内容(排除 .git 和 .sync-payload
          rsync -av --exclude='.git' --exclude='.sync-payload' --exclude='.github' ./ /tmp/main-repo/federation/awen/workspace/
          
          # 提交推送
          cd /tmp/main-repo
          git add -A
          git diff --cached --quiet && echo "无变更,跳过推送" && exit 0
          git commit -m "🌉 [bridge-sync] Awen → GuanghuLab | $(TZ='Asia/Shanghai' date '+%Y-%m-%d %H:%M')"
          git push origin main
          
          echo "✅ 同步完成!"

      - name: "📝 Sync Result Summary"
        if: always()
        run: |
          echo "## 🌉 桥接同步结果" >> $GITHUB_STEP_SUMMARY
          echo "- 源仓库: $GITHUB_REPOSITORY" >> $GITHUB_STEP_SUMMARY
          echo "- 目标仓库: qinfendebingshuo/guanghulab" >> $GITHUB_STEP_SUMMARY
          echo "- 同步路径: federation/awen/" >> $GITHUB_STEP_SUMMARY
          echo "- 时间: $(TZ='Asia/Shanghai' date '+%Y-%m-%d %H:%M:%S CST')" >> $GITHUB_STEP_SUMMARY
  1. 点击 Commit changes → 选择 "Commit directly to the main branch" → Commit

方法B命令行创建适合熟悉Git的

# 克隆你的仓库
git clone https://github.com/WENZHUOXI/guanghu-awen.git
cd guanghu-awen

# 创建工作流目录
mkdir -p .github/workflows

# 创建工作流文件(把上面的 YAML 内容保存为这个文件)
nano .github/workflows/bridge-sync.yml

# 提交推送
git add -A
git commit -m "🌉 初始化桥接同步工作流"
git push origin main

Step 4 · 测试验证

  1. 推送后Actions 会自动触发
  2. 打开 https://github.com/WENZHUOXI/guanghu-awen/actions
  3. 查看最新的工作流运行状态
  4. 绿色 = 成功,数据已同步到 guanghulab/federation/awen/
  5. 红色 = 失败,点进去看日志排查

常见报错及解决

报错 原因 解决
remote: Permission denied MAIN_REPO_TOKEN 无效或过期 让冰朔重新生成 Token重新配置 Secret
secret MAIN_REPO_TOKEN not found Secret 名字打错 检查 Settings → Secrets确认名字完全一致
Repository not found 主仓库地址错或 Token 没有 repo 权限 确认 Token 勾选了 repo 权限
Nothing to commit 仓库没有新内容 正常现象,不是错误

🔄 手动触发同步

不想等定时?随时手动触发:

  1. 打开 Actions 页面
  2. 左侧选 "🌉 Bridge Sync to GuanghuLab"
  3. 点击 Run workflowRun workflow