Git how to clone with SSH key, username

I have the following and i need to clone the repository in either windows terminal command prompt or linux.

I tried as :

git clone [email protected]:xxx/xxx/git

I get

Permission denied(public key)
Couldn't read from remote repository

Also tried to change the URL as:

git clone https://xxxxx.com:xxx/xxx/git

Always coming late to answer anything, it may be possible that you have more than one ssh keys and if not specified git will try to use id_rsa but if you need a different one you could use

git clone [email protected]:userName/projectName.git --config core.sshCommand="ssh -i ~/location/to/private_ssh_key"

This way it will apply this config and use a key different than id_rsa before actually fetching any data from the git repository.

subsequent fetch or push will use the specified key to authenticate for the cloned repository.

Hope this is helpful to anyone.


I suggest that you follow those steps:

Step 1: Check for existing SSH keys

$> ls -al ~/.ssh

Do you see any files named id_rsa and id_rsa.pub?

If yes go to Step 3

If no, you need to generate them

Step 2: Generate a new SSH key

$> ssh-keygen -t rsa -b 4096 -C "yourEmail"

Add your SSH key to the ssh-agent

$> eval "$(ssh-agent -s)"

$> ssh-add ~/.ssh/id_rsa

Step 3.1: Add the SSH key to your GIT account.

Get your public key

$> cat ~/.ssh/id_rsa.pub

Go to your GIT project -> Settings -> SSH keys

Then past the content of your public key in SSH keys

Step 3.2: Force SSH Client To Use Given Private Key

This is an alternative solution when you can't set keys on your Git account

$> sudo nano ~/.ssh/config

Then change this line

IdentityFile <yourPrivateKey>

Step 4: Clone the project

$> git clone [email protected]:xxx/xxx/git


test ssh with GitHub to get actionable feedback.

in the command line run ssh -T [email protected]
(see https://help.github.com/articles/testing-your-ssh-connection/)


if that works, bother with git next. but likely there will, be your issue.

to clone, THEN use git clone [email protected]:$USERNAME/$REPONAME.git