Jenkins连接GitHub报Authentication failed认证失败该如何解决?
问题背景
我尝试在Jenkins中对接GitHub,实现运行任务后自动将代码commit并push到GitHub的需求。
已经参照相关配置教程的步骤操作,但问题未解决:即便已在Git Auth插件上完成全部配置,仍然持续提示认证失败。
报错信息
控制台核心报错如下:
fatal: could not read Username for 'https://github.com': No such device or address
完整报错截图:
排查&解决步骤
- 确认GitHub认证凭证权限合规:如果使用个人访问令牌(PAT)认证,必须为令牌开启
repo、workflow、read:user、user:email四类权限,同时确认令牌未过期、未被撤销。 - 校验任务仓库地址配置:如果使用HTTPS协议的仓库地址,不要在地址中硬编码用户名和密码,直接填写标准GitHub仓库HTTPS地址,在任务「源代码管理」模块的「Credentials」下拉列表选中你提前配置好的GitHub认证凭证即可。
- 排查SSH认证配置(若使用SSH协议):切换到Jenkins服务的运行用户,执行
ssh -T git@github.com命令,确认返回Hi开头的连通成功提示;如果报错,检查对应家目录下.ssh文件夹中的私钥配置是否正确,公钥是否已经上传到GitHub账号的SSH密钥列表中。 - 验证全局GitHub连通性:进入Jenkins后台「Manage Jenkins」→「Configure System」→找到「GitHub」配置板块,点击「Test connection」按钮,确认全局配置的GitHub凭证可以正常连通无报错。
- 升级Git版本:如果Jenkins运行环境的Git版本低于2.28,部分GitHub新的认证规则无法兼容,建议将Git升级到最新稳定版后重试。
内容的提问来源于stack exchange,提问作者ccaldito
相关产品推荐
相关产品推荐

