Source Tree SSH Public Key Denied
Pracuję nad projektem w prywatnym repozytorium na https://www.bitbucket.com .
Koduję go lokalnie, a następnie uruchamiam, komentuję i pcham aktualizację do Klienta Windows Git BitBucket, Sourcetree .
Następnie pobieram pliki ze zdalnego serwera współdzielonego , który wymaga uwierzytelnienia SSH.
W celu połączenia git repo z kontem bitbucket próbowałem:
- uruchomił wbudowany Sourcetree ssh agent (Konkurs)
- dodał mój .ppk (klucz prywatny PuTTY) do konkursu przy użyciu mojego hasła
- otworzyłem Terminal SourceTree w miejscu mojego projektu, nazwijmy go
C:/Project
. - używane
git init
do inicjalizacji repozytorium. - używane
git push -u origin --all
w celu przepchnięcia repo z mojego komputera do BitBucket. - mam ten błąd:
Permission denied (publickey).
- próbowałem sprawdzić, czy mogę
ssh -Tv [email protected]
- nadal,Permission denied
.
Uwaga: załadowałem klucz publiczny w moim profilu na BitBucket.
5 answers
Do kogo może mieć ten sam problem na Macu z new Sierra. Rozwiązaniem byłoby dodanie klucza prywatnego do agenta SSH poprzez:
ssh-add -K ~/.ssh/id_rsa
Wygląda na to, że tożsamość [id_rsa] nie jest utrzymywana przez agenta SSH.
Zauważ, że nie jest to trwałe rozwiązanie .. Musisz to zrobić za każdym razem, gdy klonujesz nowy repository.At przynajmniej wtedy nie trzeba dostarczać klucza prywatnego dla każdego push to remote.
-------- aktualizacja 28.Sep.2017 --------
Rozwiązanie stałe (na "Sierra"): {]}
Kroki:
1-Upewnij się, że masz działającego agenta ssh w tle, zanim cokolwiek zrobisz.
Aby sprawdzić, czy ssh-agent jest uruchomiony przez:
pgrep 'ssh-agent'
To polecenie zwraca PID (ProcessID) tego procesu, jeśli jest uruchomiony. Jeśli widzisz wartość.. Przejdź do kroku # 2. jeśli nie, musisz uruchomić tego agenta w tle przez:
eval "$(ssh-agent -s)"
2-edytuj ~/.ssh/config
(Utwórz, jeśli nie istnieje jako su
):
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_rsa
3-Następnie dodaj tego agenta klucza ( który byłby raz ):
ssh-add -K ~/.ssh/id_rsa
To wszystko.
właściwie Krok # 2 jest kluczowy. Chcę tylko dostarczyć kompletny przewodnik.
Mam nadzieję, że to ci pomoże.'.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-26 12:10:30
Musiałem zmodyfikować te ustawienia SourceTree:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-04 21:53:05
Wiem, że to rozwiązane, ale aby dodać do zaakceptowanej odpowiedzi, nie potrzebujesz Git Basha, aby to zadziałało. Jak powiedziała Cupcake, prawdą jest, że PuTTY wysyła .ppk
Pliki dla kluczy prywatnych, które nie będą działać poza zwykłym kontekstem PuTTY/Pageant.
Jest to spowodowane tym, że terminal domyślnie oczekuje znalezienia pliku o nazwie id_rsa
w ~/.ssh
, A PuTTY domyślnie tego nie generuje. Git Bash ' s ssh-keygen
działa, dlatego rozwiązanie Toma Granota działa.
Możesz, choć, za pomocą generatora kluczy PuTTY wyeksportuj ten sam plik za pomocą opcji Conversions/Export OpenSSH Key...
w menu. Pamiętaj tylko, aby nazwać go id_rsa
i umieścić go obok pliku id_rsa.pub
, a wszystko powinno działać dobrze.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-11-13 04:43:05
Cóż - znalazłem rozwiązanie po wielu próbach i błędach.
Najwyraźniej używanie keygen 'a PUTTY' ego i przechowywanie nowego klucza publicznego w moim folderze .ssh
nie działa.
Jednak za pomocą ssh-keygen
w GIT BASH , a następnie próba zalogowania się za pomocą nowej Wygenerowanej pary kluczy, działa dobrze.
Z ciekawości, choć bardziej niż cokolwiek innego-chciałbym wiedzieć, dlaczego tak jest.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-28 10:02:10
Przydarzyło mi się to po aktualizacji Sourcetree na moim komputerze Mac.
To, co działało dla mnie, to po prostu usunięcie wszystkiego w folderze ~/.ssh/
z wyjątkiem folderów .config
i known_hosts
. Następnie po prostu przejdź do sourcetree w preferencjach, Usuń swoje konto github, ponownie Dodaj profil po usunięciu wszystkich kluczy publicznych i prywatnych .ssh
, a sourcetree powinien ponownie dodać klucze lokalnie i do GitHub
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-05 10:52:04