I've searched around for many hours on end looking to a solution to my seemingly easy-to-fix problem. It's not that my search turned up nothing, it's that my search turned up so many different solutions -none of which have worked.
Anyways, I am simply unable to push, pull, or fetch from my Heroku repository from my Mac. Every attempt gives me (as if it's mocking me) the following error:
'Permission denied (publickey). fatal: Could not read from remote repository.'
I've tried (and re-tried) to fix it in many different ways. As I've said, I've spent a good chunk of the last two days searching around for an answer. Here are some of the things I've tried:
I can fetch from my GitHub repository fine, so I know it's not network connectivity (pinging heroku also works).
As a makeshift solution (that I hope doesn't turn into a permanent one), I've logged in to my Ubuntu Amazon AWS ec2 instance. Pulling and pushing to and from Heroku works perfectly. For this reason, I still feel as if the problem lies with the ssh key on my Mac. Both keys show up under my Heroku account. Does the email address at the end of the key matter?
EDIT: I can push and pull from GitHub fine (I'm not using ssh, however), so why not Heroku?
At this point I'm willing to try anything. Thanks!
I know this has already been answered. But I would like to add my solution as it may helpful for others in the future..
A common key error is: Permission denied (publickey)
. You can fix this by using keys:add
to notify Heroku of your new key.
In short follow these steps: https://devcenter.heroku.com/articles/keys
First you have to create a key if you don't have one:
ssh-keygen -t rsa
Second you have to add the key to Heroku:
heroku keys:add
I just thought I'd share that I found the answer to my own question.
Writing out my problem made it even more clear to me, and I further investigated into where I thought my problem lay: the ssh key
Turns out I was right. The issue wasn't with the key itself, but rather that I had not added it to my local Mac's list of known ssh keys. So even though my Heroku account had the correct key uploaded, my Mac could not authenticate with it because it could not find that key on my computer. The solution?
ssh-add ~/.ssh/id_rsa
#and, to confirm it's been added to the known list of keys
ssh-add -l
I would like to give credit to https://help.github.com/articles/error-permission-denied-publickey for being a good reference.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With