Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Github远程权限被拒绝_Git_Github - Fatal编程技术网

Github远程权限被拒绝

Github远程权限被拒绝,git,github,Git,Github,我正在尝试将我的回购协议上传到github,并完成所有步骤,直至: git-push-u原始主机 在这一点上,它给出了以下错误: 远程:samrao2/manager-4.git的权限被samrao1拒绝 致命:无法访问“”: 请求的URL返回错误:403 我想问题是我在“samrao1”之前登录了另一个Git帐户,现在我正试图推到“samrao2” 有人能帮我重新设置到我可以成功推到“samrao2”的位置吗。我假设在我第一次尝试输入密码时,系统会提示我输入密码 我不确定问题出在哪里,但既然您

我正在尝试将我的回购协议上传到github,并完成所有步骤,直至:

git-push-u原始主机

在这一点上,它给出了以下错误:

远程:samrao2/manager-4.git的权限被samrao1拒绝

致命:无法访问“”: 请求的URL返回错误:403

我想问题是我在“samrao1”之前登录了另一个Git帐户,现在我正试图推到“samrao2”


有人能帮我重新设置到我可以成功推到“samrao2”的位置吗。我假设在我第一次尝试输入密码时,系统会提示我输入密码

我不确定问题出在哪里,但既然您提到不知道“安装了正确的密钥”意味着什么,我就假设您还没有设置计算机以通过SSH对Github存储库进行身份验证

本指南应向您展示如何做到这一点:

另外,我建议使用'git://github.com/samrao2/manager-4.git/'而不是''。后者要求您每次输入一个密码,而前者将通过SSH进行身份验证,这远没有那么烦人。您可以通过键入以下内容将存储库中的远程URL更改为使用git协议,而不是https:

git remote set-url origin git://github.com/samrao2/manager-4.git

从您的项目目录中。

无法访问https意味着:这与SSH无关(切换到SSH虽然可能,但并不能解释最初的问题)

这与凭据缓存有关,这意味着在您尝试推送到新帐户时,Git将默认提供旧帐户的凭据(GitHub帐户和密码)

查看您是否有一个可以缓存用于验证您身份的(旧帐户)凭据(用户名/密码)

git config credential.helper 
在Mac上,和之前一样,只需转到/打开您的钥匙链访问->搜索github.com相关文件->并在那里编辑凭据

见“

在Windows上(2021年,可能是Linux甚至Mac),这将是
打开Windows凭据存储,查看第一个用户是否在那里注册:删除该条目,您将能够与第二个用户进行身份验证

(以下是BitBucket的一个示例)


在命令行中(请参阅),对于manager核心凭据帮助程序:

  • 获取旧密码:

    printf“protocol=https\nhost=github.com\nusername=“|\
    git凭证管理器核心获取
    #输出:
    协议=https
    host=github.com
    用户名=
    密码=
    
  • 删除旧密码:

    printf“protocol=https\nhost=github.com\nusername=“|\
    git凭证管理器核心擦除
    

(用您的GitHub用户帐户名替换

如果您使用的是MacOS,您可以

  • 转到钥匙链访问
  • 搜索“GitHub”
  • 然后,当结果“github.com”弹出时,将帐户或密码更改为新帐户,然后保存
  • 那你们都准备好了

  • 多个用户生成自己的ssh密钥

  • Alice存储库,gitbash

    • git config user.name“Alice”
    • git config user.email”alice@email.com“
    • eval$(ssh代理-s)
    • ssh add~/.ssh/alice.private
    • ssh-Tgit@github.com
      ,测试SSH连接
    • Git其他操作
  • Bob存储库,git bash

    • git config user.name“Bob”
    • git config user.email”bob@email.com“
    • eval$(ssh代理-s)
    • ssh add~/.ssh/bob.private
    • ssh-Tgit@github.com
      ,测试SSH连接
    • Git其他操作

  • 问题是您正试图使用旧的github帐户的ssh密钥推入新的github帐户,因此请使用此链接为新的github帐户生成一个新的ssh密钥,然后将其添加到您的github帐户。尝试推送之后,从项目目录中删除.git文件夹,然后再次从一开始推送它们对我来说很有效。

    我在Github有一个个人帐户和一个业务帐户。我同时向两个帐户提交和推送更改


    我所做的是1)在单独的会议上运行个人和商业项目;2) 使用SSH链接设置一个帐户的URL,并使另一个帐户的URL保持正常(HTTPS)。

    是否安装了正确的密钥?嗨-不确定这意味着什么…Luan Si Ho的解决方案对我有效。您甚至可以将GitHub添加到您的SSH配置中!这起作用了。谢谢我进入Mac密钥链,删除了一组与Github相关的记录。然后它提示我输入密码,效果非常好!谢谢Thnx!!对于MacOS上的ppl,只需转到/打开您的钥匙链访问->搜索github.com相关文件->并在那里编辑凭据。有时它会使用默认的登录帐户并将其存储在那里。@ArpitJ。非常感谢。我已将您的评论包含在回答中,以提高可视性。谢谢。这几乎让我发疯。“我必须记住它。”杰夫特。不客气。我已经编辑了答案,以包含命令行选项。