Skip to content

Github

1、workflows脚本自动同步代码

yml
# 工作流的名字,会显示在 GitHub Actions 页面的左侧列表里
name: 自动全量同步源仓库 

# 触发条件
on:
  schedule:
    # Linux 标准的定时任务格式。五个位分别代表:分 时 日 月 周
    - cron: '0 0 * * *'    # 每天北京时间早上 8 点自动运行一次 (UTC 0点)

  # Actions 界面增加那个蓝色的 "Run workflow" 按钮
  workflow_dispatch:        # 允许你在 Actions 页面手动点击按钮立即同步

jobs:
  # 自定义任务起的名字,日志里会显示
  repo-sync:
    # 告诉GitHub分配一台装了最新Ubuntu系统的虚拟服务器来跑下面这些脚本。
    runs-on: ubuntu-latest
    # 执行步骤
    steps:
      - name: Checkout
        # 调用官方预设的脚本。就像在电脑上打开你的仓库文件夹。
        uses: actions/checkout@v4
        with:
          fetch-depth: 0   # 关键参数:默认只拉最新的一条提交记录,设0表示拉取完整的历史记录和所有分支信息

      - name: 同步所有分支和标签
        # 调用社区大佬写好的同步工具,它专门处理两个仓库之间的对齐。
        uses: repo-sync/github-sync@v2
        with:
          # 被fork的源仓库地址
          source_repo: "https://github.com/flutter-webrtc/flutter-webrtc.git" 
          source_branch: "*"      # 同步所有分支
          destination_branch: "*" # 同步到你自己的对应分支
          # 临时的,每次运行都会自动生成。需要在Settings里开Read and Write permissions
          github_token: ${{ secrets.GITHUB_TOKEN }}