简体   繁体   中英

Bitbucket/Github: permission denied public key

when I am trying to clone a rails app repo I have got permission to, I am getting this issue.

Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Even after adding public key by generating one, I am unable to solve this.

Although I am able to clone using he https method but after making changes, the same error comes while I try to push the code.

Please suggest an answer for this.

When attempting to clone, push, or pull over SSH with Git, you may receive one of these messages if Bitbucket couldn't authenticate with the keys that your SSH agent offered.

Here are the most common reasons why you may see these messages:

You used sudo when attempting the connection

You shouldn't use sudo when cloning, pushing, or pulling because the ssh-agent runs on the user level, not the root level.

Your public key isn't loaded into Bitbucket

To check if your public key is loaded into Bitbucket, do the following:

From Bitbucket, choose Personal settings from your avatar in the lower left. The Account settings page displays.

Click SSH keys. The SSH keys page shows a list of any existing keys.

If you don't have any keys listed, you can follow our Set up an SSH key documentation to set one up.

Your key isn't loaded into your SSH agent

If your SSH agent doesn't know to offer Bitbucket a key, the connection fails. You may run into this issue if you've recently restarted your system.

You can refer to this Article for more informations: https://support.atlassian.com/bitbucket-cloud/docs/troubleshoot-ssh-issues/

First , cd into your .ssh directory. Open up the terminal and run:

cd ~/.ssh && ssh-keygen

Second , you need to copy this to your clipboard:

 cat id_rsa.pub | pbcopy # On OSX
 cat id_rsa.pub | xclip # On Linux

Third , add your newly generated ssh key to your account via the github/bitbucket website (just paste there).

Next , setup your git config:

git config --global user.name 'your_user_name'
git config --global user.email 'your_email'

Finally , restart your command line to make sure the config is reloaded.

Now , you should be able to clone and push from/to your github repository.

For more information on this, see this github page or this bitbucket page .

Check few things.

  1. Is the generated new key is the one your ssh agent using when trying to ssh to server. (Your ssh agent might be using a different key than the one you generated) use this to list currently loaded keys by agent.

    ssh-add -L

  2. You properly added public key to your repository hosting location.

The keys corresponding to above 1 and 2 should match.

Please see this article: GitHub: Generating SSH Keys . What happens when you run:

ssh -T git@bitbucket.org

?

You may have added the wrong key to authenticate with.

I faced this error when I created another repository in my local. My ssh-keys were already set up and I was trying to push code through vs code. The issue got resolved when I git push -ed through git bash like I was doing before.

For bit bucket I think I have tried everything with ssh. I have tried the answer from this stackoverflow question as well. But it doesn't work. So finally I just changed the clone command from SSH to HTTPS and it worked. Only then it asked for password for my account.
在此处输入图像描述

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM