git操作求助!
ssh给github.com配置了两个别名,github-pccl和github-learn。但ssh连接只会使用第一次的连接用户,导致第二次会有权限报错
ssh config的配置如下:
# ucloud_pccl github
Host github-pccl
HostName github.com
User emma.bi@ucloud.cn
IdentityFile ~/.ssh/id_rsa
# 163 github
Host github-learn
HostName github.com
User bipeishan666@163.com
IdentityFile ~/.ssh/id_rsa_learn
现象如下:
第一次在仓库执行git fetch,走github-learn的配置;
删除known_hosts;
第二次另一个仓库执行git fetch,known_hosts文件没有重新生成,导致fetch会报错
ssh: Could not resolve hostname github-pccl: nodename nor servname provided, or not known
fatal: Could not read from remote repository
确认.ssh/id_rsa
和.ssh/id_rsa_learn
配置是没有问题的
执行ssh -T git@github-pccl
输出Hi bippeishan! You've successfully authenticated, but GitHub does not provide shell access
用户还是第一次的
做过以下尝试:
- 重启电脑
git fetch 会重新生成known_hosts文件,使用新的配置 - 退出terminal,重新打开
和上面一样的报错 - 清除git缓存:git credential-cache exit
和上面一样的报错
期望结果:希望在删除known_hosts文件后,执行git fetch能重新使用新的配置生成known_hosts文件,而不需要重启电脑