GitHub仓库递归通过SSH克隆子模块失败问题排查
问题描述
尝试递归克隆包含子模块的仓库 git@github.com:revanced/revanced-documentation.git 时,子模块克隆失败,报错信息如下:
Cloning into 'revanced-documentation/repositories/revanced-manager'...
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
排查信息
- 本地可复现该问题,执行命令:
git clone --recursive git@github.com:revanced/revanced-documentation.git - 仓库子模块采用SSH地址配置:
[submodule "repositories/revanced-manager"] path = repositories/revanced-manager url = git@github.com:revanced/revanced-manager.git branch = docs
- 问题出现在版本
f7770106f8d771893be23837fae9cdf5d06e536e - GitHub Actions中的工作流也出现相同问题
- 由于仓库为公开状态,改用HTTP地址克隆子模块可正常工作
- 手动通过SSH克隆子模块仓库可正常完成
说明
该问题可在本地及GitHub Actions复现,推测问题源于仓库配置。虽可用HTTP作为临时方案,但业务要求必须使用SSH。
内容的提问来源于stack exchange,提问作者oSumAtrIX
相关产品推荐
相关产品推荐

