我会非常详细,因为我按照related question的建议进行了操作,但它没有用。
我在Mac OS X 10.7上尝试让两个heroku帐户工作。我们将这些帐户称为first
和second
要开始清理,我删除了~.ssh/
中的密钥,然后运行
heroku keys:remove
在两个帐户上删除现有密钥,并运行ssh-add -D删除现有条目(换句话说:〜.ssh /为空,除了known_hosts; heroku keys
说我有没有键,ssh-add -L表示没有条目。
我heroku login
进入第一个帐户并执行以下操作:
ssh-keygen -t rsa -C "first@example.com" -f ~/.ssh/id_rsa_first
ssh-add ~/.ssh/id_rsa_first
heroku keys:add ~/.ssh/id_rsa_first.pub
然后我heroku logout
和heroku login
进入第二个帐户,我运行这些:
ssh-keygen -t rsa -C "second@example.com" -f ~/.ssh/id_rsa_second
ssh-add ~/.ssh/id_rsa_second
heroku keys:add ~/.ssh/id_rsa_second.pub
在这两种情况下,我都会记下关键指纹,我会将其称为fingerprint_first
和fingerprint_second
。
现在我heroku login
到first
和git push heroku master
工作正常,然后heroku login
到second
第二个应用,git push heroku master
失败,错误
! Your key with fingerprint fingerprint_first is not authorized to access second-app-name.
如果我使用ssh-add -d ~/.ssh/id_rsa_first
从ssh列表中删除该内容,那么git push heroku master
将在第二个应用上运行,但现在如果我回到第一个应用并且heroku login
到第一个帐户,git push heroku master
当然失败了。
请帮助:)
答案 0 :(得分:2)
最后,this answered it。
我从头开始重新启动,删除了所有密钥,并添加了David Dollar's plugin heroku-accounts
现在它可以工作,我甚至不需要在切换项目时注销/,因为我可以在每个项目目录上设置一个Heroku帐户。
答案 1 :(得分:0)