GitHub 从特定目录检出操作

GitHub Action checkout from specific directory

我正在尝试通过 ftp 在推送到 master 分支时将 repo 上传到服务器。我已经设置好并开始工作了。但是在 repo 中有一个文件夹 /public。我只想把这个文件夹里的文件上传到服务器。不是其他文件或文件夹本身。我试图为这项工作设置一个工作目录,但这似乎没有用。有什么想法吗?

 on: 
      push:
        branches:
          - master
    name:  Deploy website on push
    jobs:
      ftp-web-deploy:
        name:  Deploy
        runs-on: ubuntu-latest
        defaults:
          run:
            working-directory: ./public
        steps:
        - name:  Get latest code
          uses: actions/checkout@v2.4.0
          working-directory: ./public
          with: 
            fetch-depth: 2
        - name:  Sync files
          uses: SamKirkland/FTP-Deploy-Action@4.2.0
          with:
            server: ****
            username: ****
            password: ${{ secrets.prod_ftp_password }}
            server-dir: public_html/

不可能只签出一个目录,但之前已在 actions/checkout 存储库中请求:https://github.com/actions/checkout/issues/483

有一个检查特定文件的操作,但我没有尝试过,我不确定它是否符合您的要求:https://github.com/marketplace/actions/checkout-files

您可能想问自己为什么要限制传输的文件数量。是因为你担心交通吗?还是因为后续动作中预期的输入?

如果是后者,您还可以通过 运行 一些 mvrm 命令手动“修复”结构。