我有两个不同的帐户要上传更改,这里是GitHub帐户和Bitbucket帐户具有不同的电子邮件地址,因此我试图配置多个ssh密钥以保持提交,推送并分别从Github和Bitbucket中提取更改。
我尝试通过运行以下命令生成两个不同的ssh密钥:
ssh-keygen -t rsa -C "My.CorporateAddress@company.com"
然后,当要求输入要保存密钥的文件时,我添加以下内容:
Enter file in which to save the key (/Users/myUser/.ssh/id_rsa): /Users/myUser/.ssh/id_rsa_github
我对位桶执行相同的步骤。
然后我生成一个名为config的文件,并通过添加以下内容对其进行编辑:
Host github
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_github
Host bitbucket
HostName corporate-address.com
User git
IdentityFile ~/.ssh/id_rsa_bitbucket
但是当我跑步时:
ssh -T git@bitbucket
或者:
ssh -T git@github
尝试对其中任何一个发出拉取请求,都会出现以下错误:
GITHUB ERROR:
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
---------------------------------------------------
---------------------------------------------------
BITBUCKET ERROR:
git@bitbucket.corporate.companyName.com: Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
出于安全原因,我省略了公司名称。
我要实现的目标是可以同时使用配置有不同电子邮件地址的我的工作Bitbucket帐户和我的Personal Github帐户。
我在做什么错?您的反馈将不胜感激!
答案 0 :(得分:1)
要测试其他密钥,您应该输入:
ssh -Tv github
ssh -Tv bitbucket
无需添加用户。
重试ssh-keygen -t rsa -C "xxx@yyyy.com" -m PEM -P "" -f ~/.ssh/id_rsa_github
ssh-keygen -t rsa -C "another@yyyy.com" -m PEM -P "" -f ~/.ssh/id_rsa_bitbucket
但是请确保将公共密钥添加到您的帐户中。
GitHub的示例:“ Adding a new SSH key to your GitHub account”。
答案 1 :(得分:0)