Zauważyłem, że w najnowszej wersji Gita domyślnie wyświetla się teraz okno dialogowe „Git Credential Manager for Windows” zamiast za każdym razem pytać mnie o hasło w odpowiedzi na monit Bash.
Naprawdę nienawidzę tego zachowania. Jak mogę go po prostu wyłączyć i za każdym razem wrócić do wprowadzania hasła w powłoce Bash?
Nawiasem mówiąc, nie chcę, aby Git buforował moje poświadczenia w jakikolwiek sposób , czy to za pośrednictwem poświadczeń systemu Windows, czy jakiegoś wewnętrznego demona. Chcę wyłączyć całe buforowanie poświadczeń .
git config --system --unset credential.helper
Tools -> Options -> Git
.Udało mi się odinstalować Git Credential Manager dla Windows przy użyciu opcji odinstalowania:
Uruchom to polecenie w
C:\Program Files\Git\mingw64\libexec\git-core
źródło
git credential [fill|approve|reject]
git-credential.exe
ale musisz biecgit-credential-manager.exe
.Inna opcja, której musiałem użyć z VSTS:
git config credential.modalprompt false --global
źródło
git pull
powodu wyrzucania WCM. Dzięki tej opcji cieszę się z obu światów: WCM po fizycznym połączeniu z serwerem (lub z Pulpitem Zdalnym) i możliwości ściągania z klienta ssh.To nie zadziałało dla mnie:
Ale z
--force
flagą zadziałało:Widziałem ten ślad po uruchomieniu:
Dodałem również nazwę użytkownika Git:
Następnie:
Na koniec wstawiłem to polecenie:
Sprawdzam, czy agent SSH działa - otwórz okno Bash, aby uruchomić to polecenie
Następnie w folderze users / yourName, w którym znajduje się plik .ssh, dodaj połączenie (nadal w Bash):
Sprawdziłem wszystkie ustawienia, które dodałem powyżej:
A kiedy to zrobiłem
git push
ponownie, musiałem dodać nazwę użytkownika i hasło tylko za pierwszym razem.Od tego czasu
git push
nie mam już wiadomości o wpisywaniu moich danych logowania Git.Po tych ustawieniach otrzymałem również e-mail z wiadomością:
źródło
Miałem ten problem i usunąłem tylko plik git-credential-manager.exe z:
źródło
Chciałem używać menedżera poświadczeń do normalnego użytku, ale mam skrypty, w których oczywiście nie chcę żadnych monitów
git.exe
. Oto jak wywołuję Git z moich skryptów:W ten sposób skrypt zawsze widzi „prawidłowe” ustawienie braku monitu bez konieczności dostosowywania jakiejkolwiek konfiguracji.
(Git dla Windows 2.13.3)
Odmiana, która może się również przydać, to ustawienie:
Ale pamiętaj, że
git.exe -c credential.interactive=never <command> ...
to nie działa (wydaje się, że-c
rzecz nie jest kierowana do Git Credential Manager dla Windows lub cokolwiek innego).W ten sposób możesz użyć GCMfW, ale nigdy Cię to nie monituje; po prostu wyszuka poświadczenia, co może być bardzo pomocne w środowiskach nieinteraktywnych.
źródło
Posługiwać się:
Działa to w systemach Windows. Przetestowałem to i zadziałało.
źródło
Może problem tkwi w Sourcetree .
Przejdź do Narzędzia → Opcje
Odznacz „Sprawdzaj domyślne piloty pod kątem aktualizacji co [10] minut”
Uruchom ponownie Sourcetree!
źródło
Pamiętaj też, aby uruchomić Git jako administrator! W przeciwnym razie plik nie zostanie zapisany (w moim przypadku).
źródło
Uderzyłem w ten sam problem w Ubuntu 18.10 (Cosmic Cuttlefish), nie mogąc usunąć przy użyciu żadnych normalnych środków. Użyłem
git config --global --unset credential.helper
i wydawało się, że to wystarczy.źródło
W folderze „user” c: // user, spójrz na plik „.gitconfig”, a następnie usuń linię http i proxy.
źródło
Aby zapobiec używaniu okna dialogowego
git config --global credential.modalPrompt false
, spowoduje to kierowanie zapytań do konsoli.źródło
możesz po prostu usunąć menedżera poświadczeń.
źródło