Git clone private repo, permission denied

I am trying to clone a private repository owned by another developer. I do not have direct communication with this developer. They sent me a theirusername-id_rsa.pub file and a theirusername-priv.key.ppk file. I understand the ppk file is specific to to Putty ssh client. Can someone provide me with steps on how to clone their repo? I already have git configured with my own account and I think I have to add their ssh key to my ssh/config file or something, but I’m a bit of an ssh noob.

git clone git@github.com:theirusername/pro.git
Cloning into 'pro'...
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

Edit: I was able to get access to the github repository and add myself as a collaborator. Even after doing so I couldn’t

  • How to git clone 'git' metadata only
  • git clone and checkout in a single command
  • Git : The remote end hung up unexpectedly
  • Git pull fatal: Out of memory, malloc failed
  • why did “git clone” stop after unpacking object:100%, done
  • Cloning a Non-Standard Svn Repository with Git-Svn
  • git clone git@github.com:theirusername/pro.git
    

    however

    git clone https://github.com/theirusername/pro.git
    

    did work.

  • How to get the git repository that I cloned before?
  • Determining how cvs2git converted CVS trees
  • How do I change the external editor for GitHub client on MAC or Windows?
  • Make existing folder a git subtree
  • Exclude user from triggering Jenkins build webhooks
  • dealing with long personal branch names in git and gitolite
  • 3 Solutions collect form web for “Git clone private repo, permission denied”

    They sent me a theirusername-id_rsa.pub file and a theirusername-priv.key.ppk

    First of all, tell them to never do this. The public/private keys are called like that for a reason. It’s against its point to have multiple instances (persons or computers) share the same key. You should use a separate key for every single one, to have a 1-to-1 association between them.

    If they can’t add you as a collaborator (which would require a user account for yourself), then they should just add your key to their own profile. I’m emphasizing on “your key”, as you should generate it and send them only the public key. The private one should always remain secret to everybody else.

    That being said, when you have a PPK, a PuTTY private key file, you have two options. First would be to use PuTTY’s pageant to load the key file and make Git use PuTTY’s plink as the SSH client. You can do that by setting the GIT_SSH environment variable to the path to plink.exe, e.g. C:\Program Files\PuTTY\plink.exe.

    The second option would be to convert the PPK to an OpenSSH key file which the SSH client that comes with Git can use. You can do that by opening the PPK with PuTTYgen and choosing “Conversions/Export OpenSSH key”. You should save the file as C:\Users\<username>\.ssh\id_rsa to make Git use it.

    You need:

    • to make sure you have environment variable HOME defined (if you do your git operations from a git bash session, this should be defined for you even on Windows)
    • to convert your ppk keys into id_rsa and id_rsa.pub: see “How to I tell Git for Windows where to find my private RSA key?”.
    • define your config file or add your key to ssh agent, as described in “Specify private SSH-key to use when executing shell command”.

    Just copy and paste below code in a bat file and execute it

    echo y|”C:\Program Files (x86)\PuTTY\plink.exe” root@XXX.XXX.XXX.XXX -pw XXXX exit

    XXX.XXX.XXX.XXX : This is IP Address of your device.

    XXX : This is password of your device

    Git Baby is a git and github fan, let's start git clone.