gpt4 book ai didi

Git 的著名 "ERROR: Permission to .git denied to user"

转载 作者:IT王子 更新时间:2023-10-29 01:23:37 31 4
gpt4 key购买 nike

我尝试使用谷歌搜索并通读 https://help.github.com/en/articles/connecting-to-github-with-ssh 和各种指南。我无法 git push -u origin mastergit push origin master(相同的命令)。

我的 git 帐户至少有 2 年左右的时间了。我已经成功地在我的笔记本电脑上成功地创建了 repos 和 push -u origin master,但在这台台式机上我遇到了问题。

这是我尝试过的:

1. 我已经设置了我的 git 用户名

2. 我已经设置了我的 git 用户邮箱

3. 我已经将/home/meder/.ssh/id_rsa.pub 的内容上传到 github 的帐户页面。我已经确认我没有粘贴任何空格

4. 我用这些内容创建了一个 ~/.ssh/config:

  Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

我已经将 .ssh 更改为 700,id_rsa 600

5. 我添加了正确的远程源没有拼写错误:git remote add origin git@github.com:梅德罗/cho.git

6. 为了确认#5,这是我的 .git/config。该目录正确而不是另一个目录:

[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@github.com:medero/cho.git

7. ssh git@github.com -v 给我成功的身份验证

8. 一件奇怪的事是,它问候我的用户名后面附加了 t。我的 github 用户名是 medero,而不是 medert

Hi mederot! You've successfully authenticated, but GitHub does not provide shell access.

9.没有在代理或防火墙后面

10. 提供了 key ,这是 -v 的输出:

debug1: Host 'github.com' is known and matches the RSA host key.
debug1: Found key in /home/meder/.ssh/known_hosts:58
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /home/meder/.ssh/id_rsa
debug1: Remote: Forced command: gerve mederot
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Server accepts key: { some stuff, dont know if i should share it

debug1: Remote: Forced command: gerve mederot
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Authentication succeeded (publickey).

11.这是我使用的命令

mkdir cho
git init
touch README
git add README
git commit -m 'test'
git remote add origin git@github.com:medero/cho.git
git push -u origin master

12.我不想创建新的 SSH key 。

13. 如果我使用 ssh 进行 git 克隆并进行编辑、提交和 git 推送,我会得到完全相同的结果。

14.这是实际错误:

$ git push
ERROR: Permission to medero/cho.git denied to mederot.
fatal: The remote end hung up unexpectedly

15. 我已经设置了我的 github 用户名和 github token :

$ git config --global github.user medero$ git config --global github.token 0123456789yourf0123456789token为系统上所有git实例设置GitHub token

16. 我已确认我的 github 用户名不是 mederot 并且我的 github token 在我的帐户页面上是正确的(已验证前 2 个字符和后 2 个字符)。

17. 为了确认#16,~/.gitconfig 包含

[github]
token = mytoken...
user = medero

18. 如果有必要的话,我做了 ssh-key add ~/.ssh/id_rsa...



理论:

我怀疑有什么可疑的,因为当我通过 ssh 身份验证时,用户问候语是 mederot 而不是 medero,这是我的帐户。我的 github 帐户中的某些内容可能被错误地缓存了吗?

我还怀疑某些本地 ssh 缓存异常,因为如果我 mv ~/.ssh/id_rsa KAKAmv ~/.ssh/id_rsa.pub POOPOO,然后执行ssh git@github.com -v,当我重命名它时,它仍然对我进行身份验证并说它为我的/home/meder/.ssh/id_rsa 服务?!它必须被缓存?!

最佳答案

Google 了几天,发现只有这道题和我的情况类似。

不过,我刚刚解决了这个问题!因此,我将我的答案放在这里以帮助其他搜索此问题的人。

这是我所做的:

  1. 打开“Keychain Access.app”(您可以在 Spotlight 或 LaunchPad 中找到它)

  2. 在类别中选择“所有项目”

  3. 搜索“git”

  4. 删除所有旧的和奇怪的项目

  5. 再次尝试推送,成功了

关于Git 的著名 "ERROR: Permission to .git denied to user",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5335197/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com