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

GitHub Actions执行报错:--local仅能在Git仓库内使用

问题原因

错误出在actions/checkout@v3执行阶段,核心原因是缓存步骤(Cache)在代码检出(Checkout)之前运行:

  • 缓存恢复时会创建.git/lfs目录,但此时工作目录还不是一个完整的Git仓库
  • 后续checkout步骤执行git config --local --get remote.origin.url时,因为当前目录没有有效的.git仓库结构,触发--local can only be used inside a git repository错误
修复方案

调整步骤顺序,将Checkout source步骤移到Cache步骤之前,确保先完成Git仓库的初始化,再进行缓存操作:

修改后的GitHub Actions配置关键部分:

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout source
      uses: actions/checkout@v3
      with:
        lfs: false
        
    - name: Cache
      uses: actions/cache@v3
      with:
        key: lfs-cache-${{ github.sha }}  # 加入SHA避免缓存冲突(可选优化)
        path: .git/lfs
        restore-keys: |
          - lfs-cache-

额外说明:

  • 调整顺序后,checkout先创建完整的Git仓库,缓存步骤再针对已存在的.git/lfs目录进行缓存/恢复,不会再触发非Git仓库的错误
  • 给缓存key加上${{ github.sha }}或者分支名,可避免不同提交的LFS缓存互相干扰,提升缓存有效性

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 19:52:45