Github贡献网格蛇(snk)显示异常问题排查求助
问题诊断与解决方案
核心问题分析
你的工作流存在两个关键问题,导致GIF文件无法正常生成/上传:
- 多余的
Push changes步骤干扰了文件推送逻辑,且未将生成的dist文件纳入推送范围 - 依赖的
Platane/snk分支引用过时,同时分支更新逻辑存在疏漏
具体修复步骤
1. 移除无效的Push changes步骤
你当前工作流中的ad-m/github-push-action步骤完全多余:它尝试将未包含生成文件的main分支内容强行推回,既无实际作用还可能引发分支冲突,直接删除该步骤即可。
2. 更新Platane/snk的分支引用
原配置使用的master分支已被仓库废弃,改为使用官方维护的main分支:
- uses: Platane/snk@main
3. 完善crazy-max/ghaction-github-pages配置
添加force: true参数确保分支更新时可覆盖旧内容,避免因历史提交冲突导致文件上传失败:
- uses: crazy-max/ghaction-github-pages@v2.1.3 with: target_branch: output build_dir: dist force: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4. 验证密钥配置
在仓库的Settings -> Secrets and variables -> Actions中,确认USERNAME密钥已准确设置为你的GitHub用户名(大小写需完全匹配)。
修复后的完整工作流
name: Generate Snake on: schedule: # 每6小时执行一次 - cron: "0 */6 * * *" workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 # 升级到v3提升兼容性 - uses: Platane/snk@main id: snake-gif with: github_user_name: ${{ secrets.USERNAME }} gif_out_path: dist/github-contribution-grid-snake.gif svg_out_path: dist/github-contribution-grid-snake.svg - run: git status # 可选,用于调试查看生成的文件列表 - uses: crazy-max/ghaction-github-pages@v2.1.3 with: target_branch: output build_dir: dist force: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
额外验证操作
- 手动触发工作流(通过仓库Actions页面的
Run workflow按钮) - 执行完成后进入output分支,检查dist文件夹下的GIF/SVG文件是否存在并可正常预览
- 若仍有问题,查看工作流日志中
Platane/snk步骤的输出,确认是否有生成失败的报错信息
内容的提问来源于stack exchange,提问作者yeslee
相关产品推荐
相关产品推荐

