Jak rozwiązać błąd odmowy dostępu (publickey) podczas korzystania z Git?

631

Jestem na Mac Snow Leopard i właśnie zainstalowałem git.

Właśnie próbowałem

git clone [email protected]:cakebook.git

ale to daje mi ten błąd:

Initialized empty Git repository in `/Users/username/Documents/cakebook/.git/`
Permission denied (publickey).
fatal: The remote end hung up unexpectedly

czego mi brakuje?
Próbowałem również zrobić ssh-keygenbez passphase, ale nadal ten sam błąd.

teepusink
źródło
8
próbowałeś wgrać klucz publiczny wygenerowany przez ssh-keygen?
Patrick Cornelissen,
Mój problem polegał na tym, że próbowałem sklonować sudo- to inny użytkownik z innym kluczem publicznym.
Witalij Zdanevich,
ten sam błąd. Wcześniej utworzyłem klucz publiczny za pomocą github, a następnie wygenerowałem kolejną parę kluczy z ssh-keygennarzędziem. Usunięcie starego klucza publicznego w ustawieniach osobistych na github i dodanie mojego wygenerowanego przez ssh klucza id_rsa.pub do kluczy SSH i GPG naprawiło problemy z uprawnieniami do klonowania.
Tanner Dolby

Odpowiedzi:

774

Jeśli użytkownik nie wygenerował wcześniej pary kluczy publiczny / prywatny ssh

Te informacje działają na TheChaw, ale można je zastosować do wszystkich innych repozytoriów git, które obsługują uwierzytelnianie klucza publicznego SSH. (Patrz na przykład gitolite , gitlab lub github.)

Najpierw rozpocznij od skonfigurowania własnego zestawu kluczy publiczny / prywatny. Można użyć DSA lub RSA, więc w zasadzie każdy skonfigurowany klucz będzie działał. W większości systemów możesz użyć ssh-keygen.

  • Najpierw będziesz chciał wykonać cd w swoim katalogu .ssh. Otwórz terminal i uruchom:

    cd ~/.ssh && ssh-keygen

  • Następnie musisz skopiować to do schowka.
    • W systemie OS X: cat id_rsa.pub | pbcopy
    • W systemie Linux: cat id_rsa.pub | xclip
    • W systemie Windows (przez Cygwin / Git Bash) uruchom: cat id_rsa.pub | clip
  • Dodaj swój klucz do swojego konta za pośrednictwem strony internetowej.
  • Na koniec skonfiguruj .gitconfig.
    • git config --global user.name "bob"
    • git config --global user.email bob@... (nie zapomnij zrestartować linii poleceń, aby upewnić się, że konfiguracja została ponownie załadowana)

To powinieneś być dobry do klonowania i realizacji transakcji.

Dalsze informacje można znaleźć na https://help.github.com/articles/generating-ssh-keys (dzięki @Lee Whitney) -

Jeśli użytkownik wygenerował wcześniej zestaw kluczy publiczny / prywatny ssh

  • sprawdź, który klucz został autoryzowany w ustawieniach konta github lub gitlab
  • określ, który klucz prywatny musi być powiązany z komputerem lokalnym

eval $(ssh-agent -s)

  • określ, gdzie znajdują się klucze

ssh-add ~/.ssh/id_rsa

Rufinus
źródło
6
Ok. W rzeczywistości nie jest to git, ale problem z synchronizacją ssh. Tak samo było z Assembla, a twój link pomógł mi rozwiązać ten problem. Dzięki !
Alexandre Bourlier,
Ta odpowiedź jest pomocna, ale wydaje się bardziej kompletna i równie prosta, jeśli generujesz klucze od zera: help.github.com/articles/generating-ssh-keys
whitneyland
6
Wystąpił problem z keygenem. Jest wrażliwy na adres e-mail w globalnej zmiennej env. Jeśli masz ten problem, w pierwszym kroku będziesz chciał podać adres e-mail swojego konta github: ssh-keygen -t rsa -C „
twó[email protected]
30
Jeśli to nadal nie działa, musisz ssh-add ~/.ssh/id_rsa.
Michael Litvin
1
Kopiowanie przy użyciu xclipw systemie Linux działało tylko poprzez wykonanie następujących czynności xclip -sel clip < ~/.ssh/id_rsa.pub: help.github.com/articles/generating-ssh-keys
Pat Migliaccio
217

Bardziej szczegółowe rozwiązywanie problemów, a nawet automatyczne naprawianie można wykonać za pomocą:

ssh -vT [email protected]

Źródło: https://help.github.com/articles/error-permission-denied-publickey/

stevek
źródło
1
Mój problem dotyczył posiadania innego klucza dla mojego serwera. Gdy użyłem powyższego polecenia do ustalenia problemu, naprawiłem IdentifyFile w moim pliku konfiguracyjnym i zadziałało.
Jarie Bolander,
1
Pokazał, którego klucza github próbował użyć do uwierzytelnienia. v pomocna
cdosborn,
9
To niczego nie naprawia. Nadal pojawia się błąd w pytaniu OP.
IgorGanapolsky
5
Polecenie ma pomóc w rozwiązaniu problemu, nie jest to magiczny przełącznik napraw to dla mnie.
stevek
2
Nie mogę powiedzieć, że to rozwiązało, ale jest to bardzo interesujące polecenie i działa również z GitHub Enterprise.
Hack-R
164

Ten błąd może wystąpić, gdy uzyskujesz dostęp do adresu URL SSH (odczyt / zapis) zamiast adresu URL Git tylko do odczytu, ale nie masz dostępu do zapisu do tego repozytorium.

Czasami chcesz po prostu sklonować własne repozytorium, np. Wdrożyć na serwerze. W takim przypadku potrzebujesz dostępu TYLKO DO CZYTANIA. Ale ponieważ jest to twoje własne repozytorium, GitHub może wyświetlać adres URL SSH, jeśli taka jest twoja preferencja. W tej sytuacji, jeśli klucz publiczny zdalnego hosta nie znajduje się w kluczach SSH GitHub, dostęp zostanie odmówiony, co prawdopodobnie nastąpi .

Analogiczny przypadek ma miejsce, gdy próbujesz sklonować czyjąś repozytorium, do którego nie masz dostępu do zapisu za pomocą adresu URL SSH.

Jednym słowem, jeśli zamierzasz sklonować tylko repozytorium, użyj HTTPS URL ( https://github.com/{user_name}/{project_name}.git) zamiast SSH URL ( [email protected]:{user_name}/{project_name}.git), co pozwala uniknąć (niepotrzebnej) weryfikacji klucza publicznego.


Aktualizacja: GitHub wyświetla teraz HTTPS jako domyślny protokół, a ten ruch może prawdopodobnie zmniejszyć potencjalne niewłaściwe użycie adresów URL SSH.

kavinyao
źródło
W przypadku https://github.comadresu URL git nadal jest napisane SSL certificate problem: self signed certificate in certificate chain. git -c http.sslVerify=false clone ...wygląda na niebezpieczny ruch. Chrome nie wyświetla jednak żadnych ostrzeżeń ssl. Myśli?
Jason Kleban
1
@ uosɐſ Przepraszamy, ale nigdy nie napotkałem tego problemu. Być może pierwszą rzeczą do zrobienia jest wypróbowanie tego samego polecenia z innej maszyny i sprawdzenie, czy problem nadal występuje.
kavinyao
1
To też zrobiło dla mnie. Dzięki. Aby sklonować moje repozytorium git na moim współdzielonym koncie hostingowym (1 i 1) musiałem użyć git clone https://github.com/MyUserName/MyRepo.git Wystarczy kliknąć łącza tekstowe pod adresem URL repo po prawej stronie strony Github, gdzie jest napisane: „ Możesz sklonować za pomocą HTTPS, SSH lub Subversion . ” (Kliknij HTTPS, aby uzyskać link zamiast domyślnego SSH .)
Oliver Schafeld
DZIĘKUJĘ CI!!!!!!
Sharl Sherif
Doskonała odpowiedź. Wreszcie ktoś wyjaśnia, dlaczego tak to działa.
Qback
104

Link pomocy github pomógł mi rozwiązać ten problem. Wygląda na to, że klucz ssh nie został dodany do agenta ssh. To właśnie skończyłem.

Polecenie 1:

Upewnij się, że ssh-agent jest włączony. Polecenie uruchamia agenta ssh w tle:

eval "$(ssh-agent -s)"

Polecenie 2:

Dodaj swój klucz SSH do agenta ssh:

ssh-add ~/.ssh/id_rsa
jarora
źródło
7
Po uaktualnieniu do OSx El Capitan do Sierra zadziałało to dla mnie.
Louwki,
7
Pracuj dla mnie po aktualizacji do macOS Sierra =)
Adriano Resende
Działa to dla mnie na Raspberry Pi, gdzie ssh-add ma flagę „-k” zamiast „-K”. Ale po dodaniu klucza wdrażania udało mi się sklonować repozytorium przy użyciu łącza SSH.
Josh
34

Dostałem ten sam raport o błędzie.

Naprawiono przy użyciu HTTP zamiast tego. Ponieważ nie chcę ustawiać „kluczy SSH” dla testowego komputera.

Po sklonowaniu zmień adres URL na HTTP

git clone https://github.com/USERNAME/REPOSITORY.git

Mój problem jest trochę inny : mam ustawiony adres URL podczas dodawania istniejącego lokalnego repozytorium do zdalnego, używając:

git remote add origin ssh://github.com/USERNAME/REPOSITORY.git

Aby to naprawić, zresetuj URL na HTTP:

git remote set-url origin https://github.com/USERNAME/REPOSITORY.git

BTW, możesz sprawdzić swój adres URL za pomocą polecenia:

git remote -v
origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
origin  https://github.com/USERNAME/REPOSITORY.git (push)

Mam nadzieję, że to pomoże komuś takiemu jak ja. :RE

Robina Li
źródło
22

To działa dla mnie:

ssh-add ~/.ssh/id_rsa
Wouter Schoofs
źródło
21

Pamiętaj, że (przynajmniej w przypadku niektórych projektów) musisz mieć konto github z kluczem ssh .

Spójrz na klucze wymienione w agencie uwierzytelniającym ( ssh-add -l )
(jeśli go nie widzisz, dodaj jeden z istniejących kluczy za pomocą ssh-add / path / to / your / key (np .: ssh-add ~ /.ssh/id_rsa ))
(jeśli nie masz żadnych kluczy, najpierw je utwórz. Zobacz: http://rcsg-gsir.imsb-dsgi.nrc-cnrc.gc.ca/documents/internet/node31.html lub po prostu google ssh-keygen)

Aby sprawdzić, czy masz klucz powiązany z kontem github :

Idź do: https://github.com/settings/ssh

Powinieneś zobaczyć co najmniej jeden klucz z kluczem skrótu pasującym do jednego z skrótów, które widziałeś, gdy przed chwilą wpisałeś ssh-add -l .

Jeśli nie, dodaj jedną, a następnie spróbuj ponownie.

Mason Bryant
źródło
To zadziałało dla mnie. Stało się tak, ponieważ mój klucz nie został dodany do agenta autoryzacji. Dzięki.
antonD,
19

Walczyłem z tym samym problemem, co zrobiłem i udało mi się sklonować repo. Postępowałem zgodnie z tą procedurą dla iMaca .

Pierwszy krok: sprawdzenie, czy mamy już publiczny klucz SSH.

  1. Otwórz terminal.
  2. Wejdź, ls -al ~/.sshaby sprawdzić, czy istnieją istniejące klucze SSH:

Sprawdź listę katalogów, aby sprawdzić, czy masz już publiczny klucz SSH. Domyślne są następujące: d_dsa.pub, id_ecdsa.pub, id_ed25519.pub, id_rsa.pub

Jeśli nie znajdziesz, przejdź do kroku 2, w przeciwnym razie wykonaj krok 3

Krok 2: Generowanie publicznego klucza SSH

  1. Otwórz terminal.
  2. Wpisz polecenie followong, podając poprawny adres e-mail używany dla github ssh-keygen -t rsa -b 4096 -C "[email protected]"
  3. W terminalu zobaczysz następujące informacje Generating public/private rsa key pair. Gdy pojawi się monit o "Enter a file in which to save the key,"naciśnięcie Enter. To akceptuje domyślną lokalizację pliku. Gdy pojawi się monit Enter a file in which to save the key (/Users/you/.ssh/id_rsa): [Press enter]Po prostu naciśnij ponownie Enter. Po wyświetleniu monitu wpisz bezpieczne hasło.
  4. Enter passphrase (empty for no passphrase): [Type a passphrase]naciśnij Enter, jeśli nie chcesz Enter same passphrase again: [Type passphrase again]ponownie nacisnąć Enter

To wygeneruje id_rsa.pub

Krok 3: Dodanie klucza SSH do agenta ssh

  1. Typ pośredni eval "$(ssh-agent -s)"
  2. Dodaj swój klucz SSH do agenta ssh. Jeśli używasz istniejącego klucza SSH zamiast generować nowy klucz SSH, musisz zastąpić id_rsa w poleceniu nazwą istniejącego pliku klucza prywatnego. Wpisz to polecenie$ ssh-add -K ~/.ssh/id_rsa

Teraz skopiuj klucz SSH, a także dodaj go do swojego konta github

  1. W terminalu wpisz to polecenie z nazwą pliku ssh pbcopy < ~/.ssh/id_rsa.pubSpowoduje to skopiowanie pliku do schowka Teraz otwórz konto github Przejdź do Ustawienia> Klucze SSH i GPG> Nowy klucz SSH Wpisz tytuł i wklej klucz ze schowka i zapisz go. Voila, gotowe.
Zeeshan Shabbir
źródło
2
Kopiowanie przez użytkownika Windows za pośrednictwem: cat ~ / .ssh / id_rsa.pub | klip
Fabii
1
Wreszcie po przeczytaniu tu i tam przez godzinę, krok po kroku rozwiązanie .... działa świetnie. Pamiętaj, aby dodać hasło github jako hasło w krokach, w przeciwnym razie będziesz musiał dodawać ręcznie za każdym razem
Afshin Ghazi
13

Miałem nieco inną sytuację, byłem zalogowany na zdalnym serwerze i korzystałem z git na serwerze, kiedy uruchomiłem dowolne polecenie git, dostałem tę samą wiadomość

   Permission denied (publickey).
   fatal: The remote end hung up unexpectedly

Naprawiłem to, zmieniając plik / etc / ssh_config na moim komputerze Mac. od

ForwardAgent no 

do

ForwardAgent yes
Richipal
źródło
Wystąpił błąd podczas próby pobrania klejnotów z github z maszyny wirtualnej VirtualBox. Zaktualizowałem mój plik Vagrantfile do użycia config.ssh.forward_agent = true, zrestartowałem maszynę wirtualną i teraz działa.
Chris Bloom
1
Zgodnie z tym, może nie być najlepszym wyborem pod względem bezpieczeństwa: heipei.github.io/2015/02/26/…
Tata
13

Spotkałem ten sam problem, ponieważ uważano, że różnica między SSH a HTTPS jest

https://github.com/USERNAME/REPOSITORY.git

ssh://github.com/USERNAME/REPOSITORY.git

Więc zmieniłem HTTPS na SSH, po prostu zmieniając https://na ssh://nic na końcu adresu URL został zmieniony.

Ale prawda jest taka:

https://github.com/USERNAME/REPOSITORY.git

[email protected]:USERNAME/REPOSITORY.git

Co oznacza, że ​​zmieniłem ssh://github.com/USERNAME/REPOSITORY.gitna [email protected]:USERNAME/REPOSITORY.gitto działa.

Głupi błąd, ale nadzieja pomaga komuś!

William Hu
źródło
tak, zmieniłem ssh://github.com/USERNAME/REPOSITORY.gitna [email protected]:USERNAME/REPOSITORY.gitto działa.
William Hu
Pewnie. Mówię tylko, że nie widzę sensu wspominając o https;)
OneCricketeer
Rozumiem, bo po prostu używam sshzamiast, httpswięc właśnie zmieniłem „https: //” na „ssh: //”, a następnie dostałem błąd. Więc zmień 'ssh: // git /../ `na' git @ .. /":) Zredagowałem moją odpowiedź.
William Hu
Mi to pasuje. Dziękuję Ci bardzo! Próbowałem https, a następnie ssh, ale wciąż odmawia mi dostępu, dopóki nie stanie się tak, jak w przypadku „git clone [email protected]: /myusername/myproject.git”.
Thach Van
6

W systemie Windows upewnij się, że wszystkie aplikacje są zgodne z programem HOME. Msys zaskakująco NIE zrobi tego za ciebie. Musiałem ustawić zmienną środowiskową, ponieważ ssh i git nie mogły zgodzić się co do tego, gdzie był mój katalog .ssh.

Jason
źródło
6

Czy jesteś w środowisku korporacyjnym ? Czy to możliwe, że zmienne systemowe ostatnio się zmieniły? Na podstawie tej odpowiedzi SO klucze ssh są dostępne na stronie %HOMEDRIVE%%HOMEPATH%\.ssh\id_rsa.pub. Więc jeśli %HOMEDRIVE%ostatnio się zmieniłeś, git nie wie, gdzie szukać twojego klucza, a tym samym wszystkich elementów uwierzytelniających.

Spróbuj uruchomić ssh -vT [email protected]. Zwróć uwagę na identity filelokalizację. Dla mnie to nie wskazywało na mój normalny, \Users\MyLoginale raczej na dysk sieciowy, z powodu zmiany zmiennych środowiskowych wypychanych na poziomie sieci.

Rozwiązanie? Ponieważ mój nowy %HOMEDRIVE%ma takie same uprawnienia jak moje lokalne pliki, właśnie przeniosłem tam swój folder .ssh i nazwałem go dniem.

Andrzej
źródło
ta praca dla mnie. wczoraj mój klucz ssh działał, ale dziś niektóre ustawienia mojego systemu ulegają zmianie. Właśnie dodałem klucz shh i teraz działa.
Hitesh Agarwal
6

Ludzie, tak to dla mnie działało:

  1. Otwórz terminal i przejdź do użytkownika [Zobacz załączony obraz]
  2. Otwórz folder .ssh i upewnij się, że nie ma żadnych plików takich jak id_rsa lub id_rsa.pub, w przeciwnym razie czasami nie będzie poprawnie przepisywać plików
  3. git --version [Sprawdź instalację i wersję git]
  4. git config --global user.email „twój identyfikator e-mail”
  5. git config --global user.name „twoje imię”
  6. git config --list [upewnij się, że ustawiłeś swoje imię i adres e-mail]
  7. cd ~ / .ssh
  8. ssh-keygen, monituje o zapisanie pliku, zezwól na to
  9. cat ~ / .ssh / id_rsa.pub [Uzyskaj dostęp do klucza publicznego i skopiuj klucz do ustawień gerrit]

Uwaga : Nie powinieneś używać polecenia sudo z Git. Jeśli masz bardzo dobry powód, musisz użyć sudo, a następnie upewnij się, że używasz go z każdą komendą (prawdopodobnie lepiej jest użyć su, aby uzyskać powłokę jako root w tym momencie). Jeśli wygenerujesz klucze SSH bez sudo, a następnie spróbujesz użyć polecenia takiego jak sudo git push, nie będziesz używać tych samych kluczy, które wygenerowałeś

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

vikram jeet singh
źródło
5

Podstawowe instrukcje GIT nie zawierały odniesienia do klucza SSH. Po kilku powyższych linkach znalazłem stronę pomocy git, która krok po kroku wyjaśnia, jak to zrobić dla różnych systemów operacyjnych (link odpowiednio wykryje twój system operacyjny i przekieruje):

http://help.github.com/set-up-git-redirect/

Przegląda wszystko, co jest potrzebne do GITHub, a także podaje szczegółowe wyjaśnienia, takie jak „po co dodawać hasło podczas tworzenia klucza RSA”. Pomyślałem, że to opublikuję, na wypadek, gdyby pomógł komuś innemu ...

gMale
źródło
5

Jeden z najprostszych sposobów

idź do terminalu

  git push <Git Remote path> --all
Vizllx
źródło
3

Jeśli masz więcej niż jeden klucz, być może będziesz musiał to zrobić ssh-add private-keyfile

kashif
źródło
Wielkie dzięki! To rzeczywiście był mój problem.
GoGreen,
[root @ li566-238 hanjiyun] # ssh-add private-keyfile private-key: Brak takiego pliku lub katalogu
JY Han
3

Wystąpił ten błąd, ponieważ musiałem dać moje obecne uprawnienia do katalogu roboczego 700:

chmod -R 700 /home/ec2-user/
duhaime
źródło
3

Musiałem skopiować klucze ssh do folderu głównego. Google Cloud Compute Engine z systemem Ubuntu 18.04

sudo cp ~/.ssh/* /root/.ssh/
Kandarp
źródło
2

Właśnie napotkałem ten problem podczas ustawiania mojego bieżącego projektu i żadne z powyższych rozwiązań nie działa. więc próbowałem sprawdzić, co naprawdę dzieje się na liście debugowania, używając polecenia ssh -vT [email protected]. Zauważam, że mojej nazwy pliku klucza prywatnego nie ma na liście. więc zmiana nazwy pliku klucza prywatnego na „id_rsa” to zadanie. mam nadzieję, że to może pomóc.

Rhey M.
źródło
Nie pomocne w przypadkach, gdy jesteś przy użyciu klawisza „id_rsa” na nic innego ....
random_user_name
2

To całkiem proste. Wpisz poniższe polecenie

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Wygeneruj klucz SSH. Otwórz plik i skopiuj zawartość. Przejdź do strony ustawień GitHub i kliknij klucz SSH. Kliknij Dodaj nowy klucz SSH i wklej tutaj zawartość. To wszystko :) Nie powinieneś więcej widzieć tego problemu.

karthik339
źródło
1

Otrzymałem podobny błąd odmowy uprawnień (publickey) podczas próby uruchomienia makefile.

Alternatywnie do powyższych kroków SSH możesz zainstalować natywną aplikację GitHub dla komputerów Mac.

Kliknij Pobierz GitHub na Maca z - https://help.github.com/articles/set-up-git#platform-mac

Po zakończeniu konfiguracji przy użyciu konta git hub (zainstalowałem również narzędzia wiersza polecenia git hub, ale nie jestem pewien, czy ten krok jest wymagany, czy nie), otrzymałem wiadomość e-mail -

[GitHub] Nowy klucz publiczny został dodany do twojego konta

i mój błąd został naprawiony.

WickedW
źródło
1

Otrzymywałem ten sam błąd. Moim problemem było mieszanie się w sudo.

Nie mogłem utworzyć katalogu, w którym klonowałem się automatycznie, bez prefiksu polecenia git clone w sudo. Kiedy to zrobiłem, moje klucze ssh nie były jednak poprawnie przywoływane.

Aby to naprawić, ustawiam uprawnienia poprzez chmod w katalogu nadrzędnym, w którym chciałbym umieścić mój klon, aby móc do niego pisać. Potem uruchomiłem git clone BEZ prefiksu sudo. Potem zadziałało! Później zmieniłem uprawnienia. Gotowy.

BuvinJ
źródło
1

Otrzymałem ten błąd, ponieważ wygenerowałem klucze ssh z niewłaściwym adresem e-mail. Udało mi się połączyć za pomocą ssh, ale nie używając git. Rozwiązaniem było ponowne wygenerowanie kluczy przy użyciu głównego adresu e-mail mojego konta github.

Charles Brunet
źródło
1

To zadziałało dla mnie.

Twój klucz publiczny jest zapisywany w pliku id_rsa.pub; i jest kluczem, który przesyłasz na swoje konto. Możesz zapisać ten klucz do schowka, uruchamiając to:

pbcopy <~ / .ssh / id_rsa.pub

  • skopiuj klucz SSH do schowka, wróć do portalu internetowego.
  • W polu Klucz SSH wklej swój klucz SSH.
  • W polu Nazwa podaj nazwę klucza.
  • zapisać .
Harshikesh Kumar
źródło
1

To zadziałało dla mnie

ssh -i [your id_rsa path] -T [email protected]
Pan 陈哲
źródło
Wolisz wyjaśnić, dlaczego twoja odpowiedź rozwiązałaby jego problem, dzięki.
Muhammed Refaat
1

Najłatwiejszym rozwiązaniem tego problemu, gdy próbujesz przesłać do repozytorium z inną nazwą użytkownika, jest:

 git remote set-url origin https://[email protected]/USERNAME/PROJECTNAME.git
Nizar B.
źródło
1

Ten dziwny błąd w moim przypadku był objawem gnome-keyring-daemon niepoprawnej nazwy klucza, do którego wymagało hasła.

Postępuję zgodnie z krokami opisanymi tutaj i wprowadziłem hasło przez terminal. Błąd, zwany także mylącym interfejsem GUI, został rozwiązany. Zobacz: /ubuntu/3045/how-to-disable-gnome-keyring

rivanov
źródło
1

W moim przypadku ponownie zainstalowałem ubuntu i nazwa użytkownika została zmieniona z poprzedniej. W tym przypadku wygenerowany klucz ssh również różni się od poprzedniego.

Problem rozwiązany przez skopiowanie bieżącego klucza publicznego ssh do repozytorium. Klucz będzie dostępny dla twojego użytkownika/home/.ssh/id_rsa.pub

Sonu
źródło
1

Na moim MAC rozwiązałem to z:

cp ~/.ssh/github_rsa ~/.ssh/id_rsa

Z jakiegoś powodu mój git przestał znajdować klucz prywatny w github_rsa pliku. Stało się to w określonym repozytorium. Mam na myśli, że w innych repozytoriach git działał normalnie.

Myślę, że to błąd.

Mogłem znaleźć takie zachowanie ssh -vT [email protected]

CelinHC
źródło