无法将NuGet包发布到GitHub Packages的认证问题求助
NuGet包推送到GitHub Packages认证失败的解决办法
- 确认用户名一致性:GitHub用户名区分大小写,确保添加源命令里的
<github UserName>和源地址中的<UserName>完全一致,哪怕大小写不同都会导致认证失败。 - 改用
dotnet nuget push命令:既然已经通过dotnet nuget add source配置了带凭证的源,推送时无需重复传入--api-key,直接执行:dotnet nuget push "bin/Release/<packagename>.1.0.0.nupkg" --source github - 重置NuGet源配置:清理旧的源配置后重新添加,避免缓存干扰:
dotnet nuget remove source github dotnet nuget add source --username <你的GitHub用户名> --password <你的PAT令牌> --store-password-in-clear-text --name github "https://nuget.pkg.github.com/<你的GitHub用户名>/index.json" - 检查PAT有效性:确认你的个人访问令牌(PAT)未过期,哪怕权限全选,过期令牌也会触发认证失败。
- 验证包ID格式:GitHub Packages要求NuGet包ID必须遵循
<GitHub用户名>.<包名>的格式,比如用户名为octocat,包ID需设为octocat.MyPackage,不符合格式也会触发类似认证错误的提示。
内容的提问来源于stack exchange,提问作者SmoothJarManiac
相关产品推荐
相关产品推荐

