Permission to xxxxx.git denied to xxx 解决办法
Permission to xxxxx.git denied to xxx 解决办法
時光一、问题描述
同一台电脑上需要操作两个Github仓库,提交代码时出现该错误,原因是没有权限,不能从远程仓库读取。
二、解决方案
方案一(推荐)
1、创建SSH
切换到 C:\Users\your_user_name\.ssh
目录下,使用cmd打开该目录,但习惯上密钥文件存放在此目录,也可以在其他目录打开,生成文件后粘贴过来即可。
使用以下命令生成新的密钥
1 | ssh-keygen -t rsa -C "your email" |
提示输入要保存的文件,默认为 id_rsa
,为了方便区分不同账号,我这里起个别名 shiguang
,一路回车即可
我这里按照同样的操作生成了两对SSH密钥,如果想保留原来的密钥,也可以只生成一个
2、GitHub绑定SSH
分别给两个账号绑定新的密钥
到 Github => 点击头像 => settings => SSH and GPG keys => new SSH key
将 .pub
后缀的公钥保存到GitHub
3、配置Config文件
配置C:\Users\your_user_name\.ssh\config
文件,注意,config文件没有后缀,如果该目录没有此文件就手动创建一个 ,内容如下所示,我只需要操作连个账户,如果有多个可以配置多个
1 | #shiguang-coding |
需要修改 Host
以及 IdentityFile
为不同账号对应的别名及私钥文件
4、重置远程地址
使用以下命令查看当前仓库远程地址
1 | git remote -v |
使用以下命令修改远程仓库地址
1 | git remote set-url origin 别名:仓库路径.git |
例如,原本的仓库路径为
1 | git@github.com:Shiguang-coding/blog_source.git |
或者
1 | https://github.com/Shiguang-coding/blog_source.git |
改为:
1 | shiguang:Shiguang-coding/blog_source.git |
修改好后使用 git push
重新提交即可
如图所示:
方案二(不推荐)
如果确认之前账户不用了,直接删除ssh文件中的内容,再新建一个ssh即可
使用以下代码配置新账号的用户名和邮箱
1 | git config user.name "用户名" |
参考
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果