侧边栏壁纸
  • 累计撰写 16 篇文章
  • 累计创建 30 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

Git pull 或 push 提示:The requested URL returned error_ 403

Cook
2021-07-14 / 0 评论 / 0 点赞 / 31 阅读 / 0 字

Git pull 或 push 提示:The requested URL returned error: 403

首先肯定是权限问题

以下均以giee界面操作讲解,中文界面描述方便一些,github同理。

前提

1、首先保证自己的账号拥有项目的访问权限(如果只需要拉取私有仓库的代码,可以在项目配置部署公钥,或者设置仓库成员身份为观察者

  1. 项目访问权限配置:

    配置自己账号为仓库成员,身份根据具体所需要的权限配置,配置完成即可保证该账号拥有项目对应的权限
    image-hjsj.png

  2. 项目配置部署公钥

    将本地电脑用户文件夹下.ssh(windows:C:\Users{用户名}\.ssh;linux:cd ~/.ssh/)下的id_rsa.pub(公钥)拷贝到此处并添加

    配置部署公钥之后就可以通过ssh方式拉取代码
    image-yzuh.png

1、ssh操作

  1. 如果是配置了部署公钥

    检查windows:C:\Users\{用户名}\\.ssh;linux:cd ~/.ssh/目录下的id_rsa.pub(公钥)内容是否与前提中提到的配置的公钥一致

  2. 如果是添加了自己为项目的成员

    检查用户设置中的公钥是否与本地的公钥一致,点击公钥可以查看内容
    image-gscj.png

2、https操作

https操作需要使用用户名密码进行访问

  1. 使用 git + https 操作项目,直接提示403,并没有让输入用户名密码

    这种情况是开启了密码缓存

    使用下面命令清除使用密码缓存的配置

    git config --local --unset credential.helper
    git config --global --unset credential.helper
    git config --system --unset credential.helper
    

    清除之后再次操作

    此时应该会让输入用户名密码

  2. 输入账号的用户名密码可以正常访问(如果还是403,需要检查用户是否在项目的成员中,并且权限是否拥有),说明账号权限没有问题,之后的操作每次都会让输入用户名密码

    配置为缓存密码

    git config --global credential.helper store
    

    之后的操作就不需要输入密码了

    注意,如果配置完缓存密码之后又出现403,需要检查以下密码缓存是否正确

    密码缓存在用户目录下的.git-credentials文件中,如果不确定是否正确可以删除,重新请求一次就会重新缓存了

0

评论区