Właśnie zacząłem pracować nad Gitem. Używam Windows 7 i zainstalowałem msysgit (1.7.8) i Tortoisegit (1.7.6). Repozytorium jest tworzone na serwerze Linux dostępnym przez sieć LAN. Problem, przed którym stoję, polega na tym, że nie jestem w stanie sklonować repozytorium za pomocą Tortoisegit, prosi o hasło i nie jestem pewien, o jakie hasło prosi. W tym samym czasie mogłem sklonować repozytorium za pomocą Git Gui i wykonać wszystkie operacje. Czy ktoś może mi pomóc w zrozumieniu, dlaczego Tortoisegit pyta o hasło, podczas gdy Git Gui tego nie robi. Próbowałem odinstalować Git i Tortoisegit, a następnie zainstalować ponownie, ale bez powodzenia.
git
version-control
tortoisegit
pramodtech
źródło
źródło
Odpowiedzi:
Mój kolega rozwiązał problem. Kroki:
C:\Program Files\TortoiseGit\bin\TortoisePlink.exe
C:\Program Files (x86)\Git\bin\ssh.exe
Alternatywna ścieżka:
C:\Users\...\AppData\Local\Programs\Git\usr\bin\ssh.exe
źródło
ssh.exe
kłamstwa znajdują się w moim katalogu użytkownikaC:\Users\...\AppData\Local\Programs\Git\usr\bin
Jeśli musisz użyć nazwy użytkownika / hasła, istnieje znacznie prostsze rozwiązanie niż obecna odpowiedź nr 2:
Right-click --> Tortoise Git --> Settings --> Git --> Credential --> Choose "Wincred, all Windows users" --> Hit apply
Następnym razem, gdy wprowadzisz hasło do repozytorium, zostanie ono automatycznie zapisane.
Jeśli używasz repozytorium, które wymaga kluczy SSH zamiast nazwy użytkownika / hasła (co brzmi jak oryginalny problem OP) , musisz
Right-click --> Tortoise Git --> Settings --> Git --> Remotes
. Znajdź pilota (zwykle `` źródło ''), a następnie załaduj klucz PuTTY z kroku 2.źródło
Aby to zrobić bez kluczy ...
Kliknij prawym przyciskiem myszy na swoim folderze
Wybierz tortoiseGit-> ustawienia-> Git-> Remote
Select origin (lub cokolwiek, co oznaczyłeś głównym pilotem)
Pod adresem URL użyj tego formatu.
Gdzie NAZWA UŻYTKOWNIKA to Twoja nazwa użytkownika
: dwukropek oddziela nazwę użytkownika i hasło i musi tam być.
HASŁO to Twoje hasło
@ oddziela dane uwierzytelniające z Twoim adresem
URL URL to adres URL, którego użyjesz do połączenia się z zasobem .git
Podziękowania dla Kamaci
źródło
Zapisywanie nazwy użytkownika i hasła z TortoiseGit
Zapisywanie danych logowania w TortoiseGit jest całkiem proste. Oszczędza konieczności wpisywania nazwy użytkownika i hasła za każdym razem, gdy wykonujesz pociągnięcie lub pchnięcie.
Utwórz plik o nazwie _netrc z następującą zawartością:
maszyna github.com
zaloguj swoje
hasło logowania yourpassword
Skopiuj plik do C: \ Users \ (lub innej lokalizacji; tak się składa, że jest tam, gdzie go umieściłem)
Przejdź do wiersza poleceń, wpisz setx home C: \ Users \
Uwaga: jeśli używasz czegoś wcześniejszego niż Windows 7, polecenie setx może nie działać dla Ciebie. Zamiast tego użyj set i dodaj zmienną środowiskową home do systemu Windows za pomocą ustawień zaawansowanych w sekcji Mój komputer.
KREDYT NA: http://www.munsplace.com/blog/2012/07/27/saving-username-and-password-with-tortoisegit/
źródło
From within repo → Context-click → TortoiseGit → Settings → Git → Credential → wincred → OK
i gotowe. Napisałem pełną odpowiedź na to pytanie dla zainteresowanych.Jednym ze sposobów na to jest
plink działa natywnie z peagentem, aby pobrać załadowany klucz.
można znaleźć plink.exe wraz z peagentem i innymi dodatkami w standardowej dystrybucji szpachli
aby go użyć przejdź do:
Ustawienia TortoiseGit -> Sieć -> Klient SSH.
Domyślnie zawiera ścieżkę do TortoisePlink.exe, zamiast ścieżki do plink.exe
Alternatywnie możesz użyć ssh (.exe) w dystrybucji msys (git), ale wtedy nie możesz użyć klucza prywatnego w kombinacji formatu .ppk / Peagent. Musisz albo wyeksportować swój klucz do formatu OpenSSH przez PuttyGen, albo utworzyć parę kluczy za pomocą ssh-keygen.
źródło
Aby zautomatyzować uwierzytelnianie, użyj:
Oczywiście nie przechowuj hasła w pliku tekstowym, chyba że repozytorium nie jest ważne.
TortoiseGit> 1.8.1 instaluje pomocnika git-credential-winstore, który zapewnia lokalny interfejs API do uzyskiwania dostępu i przechowywania danych logowania w istniejącym, lokalnym magazynie poświadczeń systemu Windows .
Możesz zobaczyć zapisane poświadczenia, przechodząc do Panelu sterowania → Konta użytkowników → Menedżer poświadczeń i wybierając „Poświadczenia systemu Windows”. Wpisy rozpoczynające się od „git:” pochodzą z git-credential-winstore.
Możesz skonfigurować wincred na repozytorium przez:
(GUI)
(CLI, POSH)
cmdkey /add:git:https://[email protected] /user:USERNAME /pass:PASSWORD
Możesz wyświetlić wszystkie poświadczenia przechowywane dla repozytoriów za pomocą
cmdkey /list:git:*
Po zapisaniu hasła nie są wyświetlane przez cmdkey ( http://ss64.com/nt/cmdkey.html )
Aby wyświetlić wszystkie poświadczenia z hasłami, musisz użyć interfejsu API systemu Windows . W przypadku PowerShell jest CredMan :
źródło
Miałem ten sam problem. Moje środowisko to Windows 10 z TortoiseGit 2.3.0.0 i git w wersji 2.11.0.windows.1
Następujące rozwiązania rozwiązały mój problem:
źródło
Adres URL i tytuł okna TortoisePlink wskazują, że żółw próbuje użyć ssh jako protokołu transportowego. git obsługuje więcej niż jeden protokół transportowy, w tym dostęp do systemu plików i dostęp ssh. W swoim pytaniu opisujesz, że chcesz uzyskać dostęp do zdalnego repozytorium przez dostęp do systemu plików. W takim przypadku zdalny adres URL powinien wyglądać mniej więcej tak
file://server/path/to/repo
. Sprawdź ponownie adres URL zdalnego repozytorium.źródło
Co zrobiłem, aby to naprawić (Windows):
źródło
Odpowiedź firmy Pramodtech przestała działać dla mnie z obecną wersją oficjalnego klienta Windows Git. Przechowuje plik wykonywalny ssh w
Git\usr\bin
zamiastGit\bin
teraz (od wersji 2.5 wydanej w sierpniu 2015 r.).Więc idź do
TortoiseGit > Settings > Network
i zmień ścieżkę klienta SSH na:C:\Program Files\Git\usr\bin\ssh.exe
(lub jakakolwiek jest ścieżka do twojej instalacji Git)źródło
Niestety na moim komputerze z systemem Windows 8 nie działało rozwiązanie ze zmianą przypisania klienta SSH. Rozwiązanie, które rozwiązało problem, jest tutaj: http://www.munsplace.com/blog/2012/07/27/saving-username-and-password-with-tortoisegit/
źródło
Ponieważ żadne z przedstawionych tutaj rozwiązań nie zadziałało, a po wielu rozczarowaniach z rozwiązaniami, które znalazłem online, w końcu udało mi się to naprawić na moim komputerze.
Nie wiem, kiedy i jak skonfigurowałem mój kit TortoiseGit, aby zawsze używał jednego określonego klucza, i oczywiście powodowało to wszystkie problemy, gdy próbowałem połączyć się z innym serwerem za pomocą nowej pary kluczy.
Jak więc rozwiązać problem i jak sprawdzić, czy rzeczywiście masz ten sam problem co ja:
plink.exe
na swój komputer stądplink.exe
plink -v <path_to_your_git_clone_repo_link>
Reading private key file "C:\Path\To\Some\privateKey.ppk"
ppk
pliku, a następnie powinien wypisać coś podobnegoPageant is running. Requesting keys.
i faktycznie tego chcieliśmyTo jest to, jeśli ktoś wie, jak mogę wyłączyć ten „globalny domyślny klucz szpachlówki”, daj mi znać w komentarzach, a zaktualizuję tę odpowiedź o informacje.
źródło
Proszę nie adres URL zdalnego źródła repozytorium może powodować ten problem. Miałem stare repozytorium, które działało idealnie, i nowe, które właśnie sklonowałem i pytało mnie o hasło.
Po porównaniu informacji w
Settings > Git > Remote > Url
zobaczyłem, że ten, który działał, miał:[email protected]:githubAccount/repoName.git
Nowy, który nie działał, miał rozszerzenie
https
adres.Zobacz również zrzut ekranu poniżej.
źródło
Wiersz poleceń Tortoise GIT DOS przestał pytać o moje hasło, gdy umieściłem mój prywatny i publiczny klucz w C: \ Users \ .ssh dir. Korzystam z systemu Windows 7.
źródło
Miałem ten sam problem. W moim przypadku nie było hasła, które mógłbym tam wprowadzić. Połączenie zostało skonfigurowane jako SSH, ale nie zdefiniowano żadnych kluczy dla repozytorium.
Sprawdź: konfiguracja TortoiseGIT SSH . Te instrukcje dotyczą cloudforge, ale w przypadku innych usług musisz zrobić to samo, po prostu podaj swój klucz publiczny dostawcy repozytorium git.
źródło
Właśnie dziś mam podobny problem i udało mi się go naprawić instalując najnowszą wersję gita z https://git-scm.com/download/win
źródło