You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过GitHub Actions仅检出远程仓库的单个文件夹/文件

仅检出GitHub仓库指定文件夹到Windows环境的GitHub Actions Runner

我在Windows环境下使用GitHub Actions Runner,想要从mytech/betech仓库的mm365分支中,只把scripts文件夹检出到current-folder\betech目录,但实际却检出了整个仓库内容。

最初尝试的配置

我曾尝试以下配置,但未达到预期效果:

- name: Checkout just the scripts folder
    uses: actions/checkout@v3
    with:
      repository: mytech/betech
      ref: mm365
      path: betech
      token: ${{ secrets.MYGITHUBTOKEN }}

  - name: Configure Sparse Checkout   
    run: |
      echo "scripts/*" >> .git/info.sparse-checkout
      git read-tree -mu HEAD
    working-directory: betech

    env:
      token: ${{ secrets.MYGITHUBTOKEN }}
      secrets: inherit 

对应的sparse-checkout文件内容如下:

cat betech\.git\info.sparse-checkout

scripts/*

成功实现需求的配置

经过调整,以下配置可以成功仅检出scripts文件夹:

- name: Checkout just the scripts folder
    uses: actions/checkout@v3
    with:
      repository: mytech/betech
      ref: mm365
      path: betech
      sparse-checkout: |
        scripts
      sparse-checkout-cone-mode: false
      token: ${{ secrets.MYGITHUBTOKEN }}

单个文件检出方法

如果需要仅检出单个文件,只需修改sparse-checkout字段为具体文件路径即可,示例如下:

- name: Checkout single file
    uses: actions/checkout@v3
    with:
      repository: mytech/betech
      ref: mm365
      path: betech
      sparse-checkout: |
        scripts/your-target-file.ps1
      sparse-checkout-cone-mode: false
      token: ${{ secrets.MYGITHUBTOKEN }}

内容的提问来源于stack exchange,提问作者Ashar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 14:42:40