“ Oprávnění odepřeno (publickey) ” pokaždé, když se snažím tlačit na otázku git

Nedávno jsem narazil na problém: pokaždé, když se pokusím odeslat do úložiště git (v mém případě Bitbucket), zobrazí se mi tato chyba:

$ git push origin master [email protected]: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 

Našel jsem způsob, jak to vyřešit spuštěním těchto příkazů:

eval `ssh-agent` ssh-add -l ssh-add ~/.ssh/id_rsa 

Pokud to udělám a zkusím git push origin master, bude to fungovat. Ale problém je, že tento problém se začíná objevovat po nějaké době (pravděpodobně po restartu, nejsem si jistý, co to způsobí, že se znovu objeví) UPD: pravděpodobně to není způsobeno restartováním, protože jsem tomu čelil 10 minut po provedení výše uvedeného kódu a došlo ke stejné chybě. Od té doby jsem notebook nerestartoval.

Co může takové chování způsobit a jak to mohu opravit?

Komentáře

Odpověď

Myslím, že k tomu došlo, protože když jste vygenerovali klíč ssh, zadali jste přístupovou frázi pro zabezpečení. Když spustíte agenta ssh a přidáte ssh / rsa_id, mělo by to být jako pro přístupové heslo.

[root@user xxxxx]# eval "$(ssh-agent -s)" Agent pid 12082 [root@user xxxxx]# ssh-add /home/user/.ssh/id_rsa Enter passphrase for /home/user/.ssh/id_rsa: Identity added: /home/user/.ssh/id_rsa (/home/user/.ssh/id_rsa) git push -u origin master Counting objects: 94, done. 

Odpovědět

Dobře, zapomněl jsem zveřejnit problém: Neúmyslně jsem nastavil klíč na jiný server pro všechny hostitele v ~/.ssh/config. Použil ho tedy pro připojení k všichni hostitelé místo toho pravého. Smazal jsem ho pro všechny hostitele a nastavil jsem ho pouze pro ty hostitele, kteří tento klíč požadovali, a opravil to.

Doufám, že to bude užitečné ostatním.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *