解决you have no permission to access this repo fatal: Could not read from remote repository

今天写一个特别的错误事件
git push代码的时候报错了

-----Welcome to xxx Coding-----
----- Hi, aaa -----
you have no permission to access this repo.
fatal: Could not read from remote repository

提示的错误很清晰,这里要说明一下 我的账号不叫aaa,所以,在遇到这个错误之后,我赶紧回忆从昨天(因为昨天还是可以提交代码的)到今天,我都干了哪些事是与aaa这个人相关的。

很快想到,今天在登录其他项目的时候,使用了SecureCRT(类似xshell的工具)配置了远程服务器的一个秘钥(id_rsa)文件,现在想想,这个文件的主人,应该叫aaa。

在这里插入图片描述
配置好SecureCRT的链接信息后,可以直接登录远程服务器,但我在提交代码的时候,就出现了如标题的错误。

解决方法:
删掉SecureCRT里的此链接,并改掉原始文件:id_rsa的名称,必须重启电脑,再提交代码即可生效。

因为我本地电脑里也有id_rsa文件,是我用自己的账号生成的,用于提交代码到仓库的免密认证秘钥。用他人的秘钥通过SecureCRT工具导入到电脑中时,相当于在电脑的内存中,用新的秘钥覆盖了原来的秘钥,结果导致原来的秘钥在使用的时候认证不通过。

像标题的报错,一般情况下都是git 的账号,邮箱不正确导致的,像我这个因为id_rsa秘钥导致的情况很少见。

查看git 的账号 和修改账号的命令:

git config --global --list
git config --global user.name
git config --global user.email

如果你的代码已经commit了,但是还没有push,而且是push失败了:

git log  # 查看一下有多少commit是不符合规范的
# 如果只有最后一个commit需要修改,采用如下命令修复commit后push
git commit --amend --author="username <[email protected]>" --no-edit
# 如果本地有多个待Push的commits
git reset --soft 到之前的版本的id

猜你喜欢

转载自blog.csdn.net/dqchouyang/article/details/130920046