我有一个非常简单的工作流,它通过自托管运行程序(在Ubuntu 16.04服务器上)使用actions / checkout @ v2。我希望动作/签出功能可以下载子模块,这只能使用较新的下载方法来完成。总是回退到使用REST API下载我的仓库,说我的PATH中需要更新的Git。但是,git安装在/ usr / bin /中,其版本为2.7.4。 (仅当Git <2.18时,操作/签出才应使用REST API)
到目前为止,我已经尝试了一些方法,包括使用env和set-env指定PATH。我想知道问题是否是由于git位于与工作目录不同的文件系统上引起的。如果是这样,那我该如何解决呢?如果没有,那我该如何解决呢?
编辑:我添加了工作流脚本,但名称有所更改。
name: CI
on:
push:
branches:
- branch
pull_request:
branches:
- branch
jobs:
build:
runs-on: self-hosted
defaults:
run:
shell: bash
working-directory: release
steps:
- uses: actions/checkout@v2
with:
submodules: 'recursive'
env:
PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
- name: build
run: |
fakeroot ./make_actions.sh
env:
PATH: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/opt/intel/Compiler/11.1/059/bin/intel64/:/usr/local/gcc-8.3/bin