推送到Git返回错误代码403致命

问题描述 投票:14回答:7

我想将README.md推送到Github。 使用Ubuntu 14.04LTS 所以,我承诺执行以下步骤。

echo "# test" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/user/repo.git
git push -u origin master

但是,发生以下错误。

error: The requested URL returned error: 403 Forbidden while accessing https://github.com/user/repo.git/info/refs

fatal: HTTP request failed

我知道这样解决这个错误

git remote set-url origin https://[email protected]/user/repo.git

这样,我必须输入密码。

$ git push origin master
Password: 

但我不想输入密码。

我检查了这个,但我没有解决。 Pushing to Git returning Error Code 403 fatal: HTTP request failed

请告诉我如何在没有密码的情况下推送。

git github git-push
7个回答
6
投票

您必须使用https并输入您的密码或使用ssh(并将您的公共ssh密钥关联到您的github帐户)


9
投票

这可以解决您的问题:

git remote set-url origin https://username:[email protected]/user/repo.git

4
投票

我尽我所能,寻找错误的原因/解决方案:

Error: The requested URL returned error: 403 while accessing
https://github.com/Joey-project/repo.git/info/refs
fatal: HTTP request failed

我认为发生这种情况的主要原因之一是因为本地计算机到服务器的登录凭据不正确。

如果我没记错的话,就必须这样做

(1)确保你有一个稳定的git版本

(2)确保遥控器正确

(3)如果启用了2FA,则提供访问令牌

(4)检查你的权限(用户名/密码)

(5)使用ssh而不是https

Pushing to Git returning Error Code 403 fatal: HTTP request failed可能派上用场,它有很多关于你的问题的额外信息。

祝好运!我希望它对你有所帮助


2
投票

如果您使用多个github帐户,那么这也可能是问题的原因。 Git会保存您在操作系统凭证保险库中首先使用的用户名和密码。无论您的IDE告诉您什么,任何后续请求都将使用这些详细信息。


2
投票

如果您的问题是更改仓库的结果(导致用户名,密码不匹配),请在命令行中尝试此操作:

git credential-osxkeychain erase
host=github.com
protocol=https
[Press Return]

它会提示您输入用户名和密码。

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


0
投票

只需更新您的git客户端,您就不应再遇到此问题了


0
投票

如果您正在使用克隆或分支,请仔细检查您尝试推送的存储库URL是fork的URL而不是原始所有者的存储库URL。

git remote -v
© www.soinside.com 2019 - 2024. All rights reserved.