前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >github 提交报403 forbidden的错误解决

github 提交报403 forbidden的错误解决

作者头像
三丰SanFeng
发布于 2018-01-16 08:17:17
发布于 2018-01-16 08:17:17
3.4K0
举报
文章被收录于专栏:三丰SanFeng三丰SanFeng

创建本地仓库与github的传输

这里假设你的仓库地址为/user/test.git,email地址为youremail@example.com,使用的时候替换成你自己的地址即可。首先注册github帐号,由于你的本地Git仓库和github仓库之间的传输是通过SSH加密的,所以需要使用ssh key:

1)创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果有的话,直接跳过此如下命令,如果没有的话,打开命令行,输入如下命令:

# ssh-keygen -t rsa -b 4096 -C "youremail@example.com"

id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

2)通过ssh-agent来管理密钥

这里我们通过ssh-agent来管理密钥,ssh-agent是一个密钥管理器,运行ssh-agent以后,使用ssh-add将私钥交给ssh-agent保管,其他程序需要身份验证的时候可以将验证申请交给ssh-agent来完成整个认证过程。

# eval "$(ssh-agent -s)"

# ssh-add –l

4096 7d:8c:84:86:95:ce:47:29:d4:9b:39:8e:28:0c:62:c9 /root/.ssh/id_rsa (RSA)

3)登录github,打开”settings”中的SSH Keys页面,然后点击“Add SSH Key”,填上任意title,在Key文本框里黏贴id_rsa.pub文件的内容。

同步仓库并解决403报错

这时候对本地仓库和github进行同步

# git push -u origin master

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

fatal: HTTP request failed

提示403 Forbidden!

打开开关看详细日志

# export GIT_CURL_VERBOSE=1

# git push

* Couldn't find host github.com in the .netrc file; using defaults

* About to connect() to github.com port 443 (#0)

* Trying 192.30.253.112... * Connected to github.com (192.30.253.112) port 443 (#0)

* Initializing NSS with certpath: sql:/etc/pki/nssdb

* CAfile: /etc/pki/tls/certs/ca-bundle.crt

CApath: none

* SSL connection using TLS_RSA_WITH_AES_128_CBC_SHA

* Server certificate:

* subject: CN=github.com,O="GitHub, Inc.",L=San Francisco,ST=California,C=US,postalCode=94107,STREET="88 Colin P Kelly, Jr Street",serialNumber=5157550,incorporationState=Delaware,incorporationCountry=US,businessCategory=Private Organization

* start date: Mar 10 00:00:00 2016 GMT

* expire date: May 17 12:00:00 2018 GMT

* common name: github.com

* issuer: CN=DigiCert SHA2 Extended Validation Server CA,OU=www.digicert.com,O=DigiCert Inc,C=US

> GET /user/test.git/info/refs?service=git-receive-pack HTTP/1.1

User-Agent: git/1.7.1

Host: github.com

Accept: */*

Pragma: no-cache

* The requested URL returned error: 401 Authorization Required

* Closing connection #0

* Couldn't find host github.com in the .netrc file; using defaults

* About to connect() to github.com port 443 (#0)

* Trying 192.30.253.112... * Connected to github.com (192.30.253.112) port 443 (#0)

* CAfile: /etc/pki/tls/certs/ca-bundle.crt

CApath: none

* SSL connection using TLS_RSA_WITH_AES_128_CBC_SHA

* Server certificate:

* subject: CN=github.com,O="GitHub, Inc.",L=San Francisco,ST=California,C=US,postalCode=94107,STREET="88 Colin P Kelly, Jr Street",serialNumber=5157550,incorporationState=Delaware,incorporationCountry=US,businessCategory=Private Organization

* start date: Mar 10 00:00:00 2016 GMT

* expire date: May 17 12:00:00 2018 GMT

* common name: github.com

* issuer: CN=DigiCert SHA2 Extended Validation Server CA,OU=www.digicert.com,O=DigiCert Inc,C=US

> GET /user/test.git/info/refs HTTP/1.1

User-Agent: git/1.7.1

Host: github.com

Accept: */*

Pragma: no-cache

* The requested URL returned error: 403 Forbidden

* Closing connection #0

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

fatal: HTTP request failed

可以看到上面红色加粗的文字(The requested URL returned error: 401 Authorization Required),是权限问题导致的,可以修改.git/config文件追加用户名和密码:

1)编辑.git/config文件

2)在[remote “origin”]下找到找到url变量

3)修改url = https://github.com/user/test.git,修改为url = ssh://git@github.com/user/test.git,修改完了保存

4)通过git push origin master进行同步,已经可以成功了

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-07-03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
Git ssh 配置及使用
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gdutxiaoxu/article/details/53573399
程序员徐公
2018/09/18
2.4K0
Git ssh 配置及使用
Git ssh 配置及使用
前言:前几天在写博客 手把手教你用Hexo + github 搭建自己博客的时候,经常需要用到一些git操作,截了好多图,于是就想干脆整理成一系列的git 教程,总结如下
Dream城堡
2018/09/10
7380
Git ssh 配置及使用
Git入门学习到进阶3
但是在GitHub上,利用Git极其强大的克隆和分支功能,广大人民群众真正可以第一次自由参与各种开源项目了。
全栈工程师修炼指南
2022/09/28
5580
Git入门学习到进阶3
mac下使用github
      提起github相信大家都不会陌生,在这里就不再赘述了。作为开源代码库以及版本控制系统,使用好了确实会非常受益,再说的势利点,你找工作时给面试官说你经常维护自己的技术博客和github,相信你给他的印象会好很多。      windows底下如何使用github,很多好心人都已经给了非常详细的解决方案,你只需问下度娘,她会帮你解决,这里对于windows底下的使用我也就不再赘述了。这里主要讲讲如何在mac底下使用github,我刚开始使用时,还是费了一点功夫的,因为网上的资料比较杂,有些不是太准
猿人谷
2018/01/17
9540
mac下使用github
【踩坑实录】Github提交时出现错误:remote:Permission to xxx/test.git denied to xxx
第一个账号进行了提交之后,这个账号的凭据信息就被保存了下来,然后切换到第二个账号进行提交时,系统依然会使用第一个账号的凭据信息进行提交,因此便会报错。
知识分子没文化
2023/07/01
1.1K0
【踩坑实录】Github提交时出现错误:remote:Permission to xxx/test.git denied to xxx
使用 SSH 连接到 GitHub(多帐号)
◎ 通过 SSH 克隆仓库 我们克隆 GitHub 上的仓库时,一般是通过默认的 HTTPS 的方式,而非上面这种 SSH 的方式。对于克隆仓库的话,我们使用起来是感受不到这两种方式的差别的。但是,当
莲花海
2020/01/21
1.5K0
多个git账号之间的切换
做过很多遍了,却总是记不住,这回从头来描述一下。 介绍 所谓多个git账号,可能有两种情况: 我有多个github的账号,不同的账号对应不同的repo,需要push的时候自动区分账号 我有多个git的账号,有的是github的,有的是bitbucket的,有的是单位的gitlab的,不同账号对应不同的repo,需要push的时候自动区分账号 这两种情况的处理方法是一样的,分下面几步走: 处理 先假设我有两个账号,一个是github上的,一个是公司gitlab上面的。先为不同的账号生成不同的ssh-key
happy123.me
2018/06/04
2.2K0
github网站介绍、并使用git命令管理github(详细描述)
  比如:别人通过fork你的项目后,并改进了项目,向你发送了new pull request请求,
诺谦
2019/05/24
1.1K0
GitHub不再支持密码验证解决方案:SSH免密与Token登录配置
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
周陆军
2021/08/14
118.8K0
解决github提交代码Support for password authentication was removed 问题
一大早发现周末的代码commit之后没有push。按照之前的常规操作,采用用户名+密码的方式,通过https的方式push代码。结果出现如下错误:
冬天里的懒猫
2021/08/20
2.9K0
解决github提交代码Support for password authentication was removed 问题
Git的常用命令
git clone 命令默认的只会建立master分支,如果你想clone指定的某一远程分支(如:dev)的话,可以如下:
新人小试
2018/09/19
1K0
Git的常用命令
如何上传项目到GitHub
github作为开源的分布式版本管理系统,上面有众多的优秀开源项目,也有丰富的学习资料,熟练使用github也是程序员的一项必备技能。下面简单介绍下如何提交代码到github。
吾非同
2020/10/23
9110
如何上传项目到GitHub
windows git 使用的一些问题和解决方案
没这个习惯都把私钥叫id_rsa这个名字, 通常也不会放在 ~/.ssh目录下 , 但是他默认就在那儿=>C盘,我非要放D盘怎么弄?
chuchur
2022/10/25
8890
git push上传代码到gitlab上,报错401/403(或需要输入用户名和密码)
之前部署的gitlab,采用ssh方式连接gitlab,在客户机上产生公钥上传到gitlab的SSH-Keys里,git clone下载和git push上传都没问题,这种方式很安全。 后来应开发同事要求采用http方式连接gitlab,那么首先将project工程的“Visibility Level”改为“Public”公开模式,要保证gitlab的http端口已对客户机开放。 后面发现了一个问题: http方式连接gitlab后,git clone下载没有问题,但是git push上传有报错: erro
洗尽了浮华
2018/01/23
3.8K0
git push上传代码到gitlab上,报错401/403(或需要输入用户名和密码)
关于VSCode推送GitHub团队项目403的问题
推测 403(Permission Denied)是由于 VSCode 自带的扩展 "GitHub" 登录 GitHub 账号时请求的权限不足导致。
TagBug
2023/03/17
1.5K0
GitHub 系列之「向GitHub 提交代码」1.SSH2.生成SSH key3.GitHub 上添加 SSH key4.Push & Pull5.提交代码
你拥有了一个 GitHub 账号之后,就可以自由的 clone 或者下载其他项目,也可以创建自己的项目,但是你没法提交代码。仔细想想也知道,肯定不可能随意就能提交代码的,如果随意可以提交代码,那么 GitHub 上的项目岂不乱了套了,所以提交代码之前一定是需要某种授权的,而 GitHub 上一般都是基于 SSH 授权的。
Python攻城狮
2018/08/23
5000
GitHub 系列之「向GitHub 提交代码」1.SSH2.生成SSH key3.GitHub 上添加 SSH key4.Push & Pull5.提交代码
git 把项目托管到 码云出现的错误集合
https://blog.csdn.net/weixin_49931650/article/details/132416285?spm=1001.2014.3001.5501
打不着的大喇叭
2024/03/11
2660
git 把项目托管到 码云出现的错误集合
git配置远程仓库,同时配置github、gitee、gitlab,完美解决方案
新安装 git 跳过。 若之前对 git 设置过全局的 user.name 和 user.email。(用 git config --global --list 进行查看你是否设置) 必须删除该设置 git config --global --unset user.name "你的名字" git config --global --unset user.email "你的邮箱"
鳄鱼儿
2024/05/21
5500
git ssh 配置多个账户
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gdutxiaoxu/article/details/53573426
程序员徐公
2018/09/18
1.8K0
git ssh 配置多个账户
github多账户切换
由于工作需要,有两个github的账号,需要经常切换账户,下面展示具体操作步骤。
猫叔Rex
2020/06/30
3.1K0
相关推荐
Git ssh 配置及使用
更多 >
目录
  • 创建本地仓库与github的传输
  • 同步仓库并解决403报错
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档