name: 部署文档(同步 docs 分支) on: push: branches: [main] paths: - "index.html" - "_sidebar.md" - "README.md" - "docs/**" - "examples/**" - "CHANGELOG.md" - ".github/workflows/deploy-docs.yml" workflow_dispatch: permissions: contents: write jobs: sync-docs: name: 组装并强推 docs 分支 runs-on: ubuntu-latest steps: - name: 检出代码 uses: actions/checkout@v4 # docs 分支只含文档站文件(孤儿分支,与源码历史无关), # 供 Cloudflare Pages 直连:生产分支 docs、构建命令留空、输出目录 / - name: 组装纯文档并推送 docs 分支 env: TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | rm -rf site && mkdir site cp index.html README.md _sidebar.md CHANGELOG.md site/ cp -r docs examples site/ cp .nojekyll site/ 2>/dev/null || true find site -type d -name __pycache__ -exec rm -rf {} + cd site git init -q -b docs git config user.name "github-actions[bot]" git config user.email "41898282+github-actions[bot]@users.noreply.github.com" git add -A git commit -qm "docs: 同步自 main@${GITHUB_SHA:0:7}" git push -q --force "https://x-access-token:${TOKEN}@github.com/${GITHUB_REPOSITORY}.git" docs