Git, Windows a viacero privátnych kľúčov pre rozličné servery

Kde-bolo, tam bolo, chcel som vyklonovať vzdialené gitovské repo:

git clone ssh://novotnyr@repo.yaddayadda.sk:22/test-project

Lenže beda!

novotnyr@masina /c/temp/imd
$ git clone ssh://novotnyr@repo.yaddayadda.sk:22/test-project
Cloning into 'test-project'...
Permission denied (publickey).
fatal: Could not read from remote repository.

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

Čo s tým?

Git Bash čaká, že privátny kľuč sa bude nachádzať v ~/.ssh/id_rsa (alebo v id_dsa). Na Windowse teda v

C:\Users\novotnyr\.ssh\id_rsa 

Čo ak máme viacero privátnych kľúčov? Lebo jeden z GitHubu, jeden z práce, atď?

Riešenie je prosté: založme v domovskom adresári pre konfiguračný súbor pre SSH. Na mojom stroji je to súbor

C:\Users\novotnyr\.ssh\config

Pozor, žiadna prípona (aj keď si Notepad myslí, že všetko bude .txt).

Obsah súboru je:

Host repo.yaddayadda.sk
  IdentityFile ~/.ssh/novotnyr-yadda-yadda-private

A môžeme klonovať.

$ git clone ssh://novotnyr@repo.yaddayadda.sk:22/test-project
Cloning into 'test-project'...
Enter passphrase for key '/c/Users/novotnyr/.ssh/novotnyr-yadda-yadda-private':
remote: Counting objects: 3473, done.
remote: Compressing objects: 100% (1193/1193), done.
remote: Total 3473 (delta 1397), reused 3458 (delta 1389)
Receiving objects: 100% (3473/3473), 1.76 MiB | 484.00 KiB/s, done.
Resolving deltas: 100% (1397/1397), done.  

Hotovo!

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *