无法访问Github 403错误:权限被拒绝

问题描述 投票:0回答:4

我是 Git / Github 的新手,所以请原谅我的困惑!

问题在于:我刚刚对本地存储库进行了更改,并且想推送到 Github 上的原点(特别是 gh-pages)。之前,我一直在使用另一个 Github 帐户,因此我更改了我的“user.name”和“user.email”以匹配我现在尝试推送到的帐户。

截至目前,我收到 403 错误并且权限被拒绝。

我缺少哪一步?离开我发现的其他答案,似乎更改我的 user.name 和 user.email 应该可以解决问题。我需要更改 git config 中的设置才能使其正常工作吗?

欢迎任何帮助、建议或建设性批评,我只是渴望让它发挥作用!

git github jekyll github-pages
4个回答
5
投票

通过运行

git config --global  credential.helper
检查您的 git 安装是否使用 OSX 钥匙串来存储凭据。如果返回
osxkeychain
那么它就是。

来自 https://help.github.com/articles/updating-credentials-from-the-osx-keychain/:

如果您在 GitHub 上更改密码或用户名,则需要更新 git-credential-osxkeychain 帮助程序中保存的用户名和密码。

  1. 在 Finder 中,搜索“钥匙串访问”应用程序。
  2. 在“钥匙串访问”中,搜索 github.com。
  3. Keychain 中的 GitHub 密码条目查找 github.com 的“互联网密码”条目。
  4. 相应地编辑或删除条目。

您可能需要检查的另一件事是您正在推送的 github 帐户是否使用双因素身份验证?如果您是,那么您可能需要从这里

启用 2FA 时

如果您启用了双因素身份验证,则必须创建一个 身份验证时用作密码的个人访问令牌 带有 HTTPS URL 的命令行上的 GitHub。

例如,当您使用 Git 命令访问存储库时 使用 git clone、git fetch、git pull 或 git push 等命令的行 对于 HTTPS URL,您必须提供您的 GitHub 用户名和 当提示输入用户名和密码时,个人访问令牌。

有关设置双因素身份验证的更多信息,请参阅 “通过双因素身份验证为您的帐户添加安全性。”


0
投票

只需删除Keychain访问中的github.com即可删除。你会很高兴去的。


0
投票

我发现的最简单的解决方案只需 2 个步骤:

  1. 搜索 Windows 凭据并按 Enter 键,确保输入正确或使用设置找到此选项。

  2. 有一些已保存的默认登录信息,请单击 git、github,然后单击“从保管库中删除”。

现在,下次您尝试在 github 上推送某些内容时,它会执行身份验证,然后您就完成了


0
投票

即使在创建 PAT 并使用它而不是密码后,我仍然遇到此错误。我尝试了以下方法:

将 git origin 从 https:// 更改为 ssh 打开终端 / cmd 并 cd 到克隆的存储库目录并 运行:

git Remote set-url origin [电子邮件受保护]:/

这当然是我的错误,但将 github.com 添加到了受信任的主机

无法验证主机“github.com(140.82.121.3)”的真实性 已确立的。 ED25519钥匙指纹是 SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU。这把钥匙不是 以任何其他名称为人所知。您确定要继续连接吗 (是/否/[指纹])?是 警告:永久添加“github.com” (ED25519) 到已知主机列表。 [电子邮件受保护]:权限 被拒绝(公钥)。致命:无法从远程存储库读取。

请确保您拥有正确的访问权限和存储库 存在。

之后我将远程 url 更改回 HTTPS,之后就能够成功使用 PAT 进行身份验证。我在使用正确的 PAT 获得 403 几个小时后意外发现了这一点。

© www.soinside.com 2019 - 2024. All rights reserved.