2015-10-23 15 views
9

Mam do czynienia z dziwną sytuacją, w której używam konta gitlab do obsługi mojego kodu. Używam protokołu ssh, aby uzyskać dostęp do repozytorium. Jestem w stanie wyciągnąć kod, ale otrzymuję następujący błąd podczas próby wypchnięcia kodu. To może być coś głupiego po mojej stronie. Ale Mam klucze przechowywane w moim profilu gitlab i w stanie użyć go do wyciągnąć kod.Problem z formatem klucza Gitlab

Błąd:

$ git push origin master 
key_load_public: invalid format 
Enter passphrase for key '/c/Users/username/.ssh/id_rsa': 
Access denied. 
fatal: Could not read from remote repository. 

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

W haśle użyto podczas tworzenia klucza ssh, trzeba wprowadzić to i upewnij się, że dodałeś że ssh wpisz swoje konto gitlab. Nawet jeśli to nie działa. Utwórz nowy klucz ssh i dodaj go w gitlab. –

+0

@PriyanshuShekhar, Próbowałem również tej opcji. Nadal nie pozwala mi pchnąć kodu. W jaki sposób ten sam klucz ssh pozwala mi wyciągnąć kod, ale go nie wciskać? – jqheart

+0

Czy używałeś swojego klucza ssh na więcej niż jednym koncie git w tym samym systemie? –

Odpowiedz

17

Wreszcie udało mi się rozwiązać ten problem i jestem delegowania go do inni użytkownicy. Jeśli klucze wygenerowane przez putty nie pomagają uzyskać dostęp do repozytorium gitlab, spróbuj wygenerować klucze z terminalu gitbash za pomocą polecenia ssh-keygen i zapisz pliki w folderze .ssh swojego konta użytkownika.

Generowanie kluczy stylów linuksowych ułatwiło mi życie, ponieważ próbowałem wygenerować klucz w środowisku Windows za pomocą programu putgen keygen.

Mam nadzieję, że to pomoże komuś.

+3

To działało w moim przypadku, użyłem putty-keygen i otrzymywałem błąd key_load_public: invalid format. Rozwiązano go, generując klucze za pomocą narzędzia ssh-keygen firmy Cygwin. –

+2

Też pracował dla bitbucket. –

+1

Zostałem skierowany do PuTTYGen przez gitlab, ale to rozwiązanie sprawdziło się u mnie. Pomoc gitlab powinna zostać zaktualizowana za pomocą tego rozwiązania, zwł. ponieważ nie wymaga dodatkowego pobierania. – user1735003

12

PuTTYGen może generować poprawne klucze OpenSSH.

  1. wygenerować plik klucza, zapisz klucz prywatny (z lub bez hasłem)
  2. Dodaj swoją nazwę użytkownika/adres e-mail jako komentarz
  3. skopiować zawartość wygenerowany klucz i wklej go do swojej id_rsa .pub
  4. Eksportuj klucz prywatny OpenSSH za pomocą menu i zapisać go jako id_rsa

Export OpenSSH Key

+1

To działało dla mnie ... głupie okna. –

+0

Jaki plik ładujesz do Putty Agent, PAGEANT.exe? – Leonel

+0

@Leonel to nie jest dla agenta Putty przepraszam –

1

Poprawiłem mój błąd, regenerując mój klucz publiczny (id_es.pub) z mojego klucza prywatnego (id_es):

ssh-keygen -f ~/.ssh/id_es -y > ~/.ssh/id_es.pub 
Powiązane problemy