Jak zaktualizować hasło do Git?

566

Używam BitBucket z Xcode i Git do kontroli wersji, a ostatnio zmieniłem wszystkie moje hasła ( dzięki Adobe! ).

Nic dziwnego, że nie jestem już w stanie wypychać lokalnych zatwierdzeń do mojego repozytorium na BitBucket ( Authentication failed for 'https://______.git'), ale zapominam, jak zaktualizować buforowane hasło na moim komputerze iMac. Jakoś nie udało mi się go znaleźć w Google lub Stack Overflow, choć wydaje mi się, że powinno to być proste ...

Ken M. Haggerty
źródło
5
Prawdopodobnie jest przechowywany w pęku kluczy OS X (przechowalnia haseł)
Knittl
2
Może znajdować się w pliku .git / config, jeśli nazwa użytkownika / hasło są przechowywane tylko z adresem git url.
Erik Kerber,

Odpowiedzi:

867

Aby to naprawić w systemie macOS, możesz użyć

git config --global credential.helper osxkeychain

Nazwa użytkownika i hasło pojawią się przy następnej akcji Git (pull, clone, push itp.).

W systemie Windows jest to to samo polecenie z innym argumentem:

git config --global credential.helper wincred
Ken M. Haggerty
źródło
45
W systemie Mac OS 10.12.2 i kiedy to zrobiłem - sprawdziłem i dwukrotnie sprawdziłem, czy wpisałem go poprawnie - i nic się nie stało.
b_dubb,
59
@b_dubb To może nic nie zrobić, dopóki następnym razem nie wyciągniesz ręki (push, pull, fetch), wtedy pojawi się monit o podanie poświadczeń.
user2782001
3
@ user2782001 Korzystałem z pomocnika osxkeychain, uruchomienie polecenia mac nic nie zrobiło. Podejrzewam, że jeśli ktoś wcześniej nie korzystał z pomocnika, zmieniając konfigurację, aby używać pomocnika, zobaczyłby, że hasło do tego pilota nie zostało wprowadzone, wyświetli się monit i wszystko będzie dobrze za pierwszym razem. Późniejsze zmiany konfiguracji nie byłyby monitowane. Poniższa odpowiedź działała dla mnie.
neuralmer
101
Nie działa w systemie Windows. Nie
monituje
8
Działa w systemie Mac OS Mojave. Dzięki!
Nguyen Tran
508

Żadna z pozostałych odpowiedzi nie działała dla mnie w systemie MacOS Sierra 10.12.4

Oto, co musiałem zrobić:

git config --global --unset user.password

Następnie uruchom polecenie git (np. Git push) i wprowadź ponownie nazwę użytkownika i hasło.

Derek Lopes
źródło
40
To była właściwa metoda, która zadziałała dla mnie (na
Macu
1
To mnie uratowało! Przechowywałem go w kompozytorze, ale tworzyłem również plik auth.json, który stał się denerwujący, ponieważ zawsze zapomniałem dodać go do .gitignore.
cbloss793
1
Dziękuję, że zadziałało! wcześniej prosił mnie o podanie hasła, ale mimo że wprowadzenie nowego hasła wciąż nie powiodło się.
Paul Taylor
6
To nic dla mnie nie robi w systemie Windows. Po tej komendzie próbowałem wypchnąć i udało się, więc hasło jest nadal dostępne dla git
samodzielny
1
Pracował na Win10. Najpierw użyłem polecenia z tej odpowiedzi, a później po prostu git pull- pojawiło się okienko Windows monitujące o hasło. Dzięki!
shemekh
428

W systemie Windows 10 z Git

Usuń / zaktualizuj powiązane poświadczenia przechowywane w poświadczeniach systemu Windows w >> Panel sterowania \ Wszystkie elementy panelu sterowania \ Menedżer poświadczeń

wprowadź opis zdjęcia tutaj

Imran Javed
źródło
9
Tak rzeczywiście było. Dla użytkowników, którzy muszą pracować z holenderską wersją systemu operacyjnego: referencje ---> referentiebeheer
dexter
10
To było najprostsze rozwiązanie. Wszystko, co musisz zrobić, to edytować. Dzięki.
yuva
4
Przy okazji, ścieżka była dla mnie Panel sterowania \ Konta użytkowników \ ​​Credential Manager, ale najlepiej jest wpisać Poświadczenie, aby od razu wskoczyć.
Everts
1
Wielkie dzięki! Ratuj mój dzień.
Dhaval Patel,
2
Działa również w systemie Windows 7. Dzięki :)
Vladislav
164

Jedynym sposobem, w jaki mogłem zmodyfikować hasło do git, było przejście do Menedżera poświadczeń w systemie Windows (Klawisz Windows + typ „poświadczenie”) i edycja wpisu git w obszarze Poświadczenia systemu Windows 🡒 Poświadczenia ogólne. Uwaga: Nie wymieniony alfabetycznie

bom1
źródło
5
Pytanie zadano dla systemu macOS
Saikat
14
@Saikat, a jednak wielu z nas z tym samym pytaniem dotyczącym systemu Windows znajduje to SO. To prawie tak, jakby samo pytanie podczas oznaczania makra nie było specyficzne dla systemu operacyjnego!
iheanyi
1
To była jedyna odpowiedź, która zadziałała dla mnie w Win 10
Kanion Kolob
87

Miałem ten sam problem, a zaakceptowana odpowiedź nie pomogła mi, ponieważ hasło nie było zapisane w pęku kluczy. Wpisałem:

git pull https://[email protected]/mypath/myrepo.git

Następnie konsola poprosiła mnie o nowe hasło.

Julián Martínez
źródło
1
Próbowałem tylko tak, ale nadal wyświetla się pop poświadczeń, zamiast resetować hasło
Anita Mehta
To działało dla mnie, ale najpierw musiałem zresetować captcha. Dziękuję Ci.
fiskra
77

W Windows 10, o którym mowa powyżej przez @Imran Javed, możesz znaleźć Ogólne poświadczenia pod:

Panel sterowania \ Wszystkie elementy Panelu sterowania \ Menedżer poświadczeń -> Poświadczenia systemu Windows

dla swojego serwera git, a następnie możesz zaktualizować hasło, klikając przycisk edycji.

wprowadź opis zdjęcia tutaj

nzrytmn
źródło
@halxinate, którego systemu operacyjnego używasz? Dotyczy to systemu Windows 10.
nzrytmn
31

uruchomienie, git config --global --unset user.passworda następnie dowolne polecenie git spowoduje wyświetlenie monitu o podanie nazwy użytkownika i hasła.

git config --global --unset user.password
git push (will prompt you for the password)
git status (will not prompt for password again)
Shravan Ramamurthy
źródło
9
Cóż, wywołanie polecenia git push (lub pull) po prostu dało mi błąd uwierzytelnienia i odmowa dostępu. Nie podpowiedział mi
John Demetriou,
Ta odpowiedź nie obejmuje niczego, czego nie obejmuje Derek.
Bonifacio2,
26

Na moim komputerze z systemem Windows wypróbowałem rozwiązanie @nzrytmn, tj. Panel sterowania> Przeszukaj poświadczenia> Wybierz „Zarządzaj poświadczeniami”> zmodyfikowałem nowe poświadczenia w kategorii opcji git odpowiadającej mojej nazwie użytkownika. I wtedy,

Usunięte bieżące hasło:

git config --global --unset user.password

Dodano nowe hasło:

git config --global --add user.password "new_password"

I działało dla mnie.

Abhimanyu Sharma
źródło
Nie działało dla mnie. Rozwiązałem problem zgodnie z opisem tutaj: cmatskas.com/how-to-update-your-git-credentials-on-windows
vlad
NIE
PRACUJEMY
18

Jeśli jesteś użytkownikiem MAC, możesz otworzyć aplikację KeyChain Access z wyszukiwarki, a następnie poszukać tam swojego konta. Po prostu kliknij i zaktualizuj hasło. Teraz spróbuj, a wszystko się ułoży.

link w celach informacyjnych: Aktualizowanie danych uwierzytelniających za pomocą dostępu do pęku kluczy

Pracował dla mnie. :)

Nishant
źródło
1
To działało dla mnie! Umożliwia nam aktualizację hasła z jednego repozytorium. Niektóre inne sugestie na tej stronie wpłyną na wszystko, czego dotknie git.
Stefan Lasiewski
13

Wpychałem się do repozytorium po raz pierwszy. Więc nie było HEADzdefiniowane.

Najprostszym sposobem byłoby:

git push -u origin master

Następnie wyświetli monit o podanie hasła, a po wprowadzeniu zostanie ono automatycznie zapisane i będzie można je nacisnąć.

Pritam Banerjee
źródło
jeśli przepchnę z lokalnego na mój zdalny serwer, to jakiego hasła muszę użyć? Czy to hasło do mojego zdalnego serwera, czy inne?
Fawwad
@Fawwad To hasło do zdalnego repozytorium.
Pritam Banerjee
3
Mój zdalny serwer to nie github.com. To mój dedykowany serwer, na którym zainstalowałem Git.
Fawwad
Rozumiem, w jaki sposób pomogłoby Ci to zrobić za pierwszym razem, ale jak pomogłoby to zaktualizować zapisane hasło.
timwaagh
@Fawwad nie ma znaczenia, czego używasz. Nadal musisz podać poświadczenia zapewniające dostęp do zapisu do repozytorium, do którego chcesz pisać.
iheanyi
8

wykonaj następujące kroki w terminalu:

  1. Usuń bieżące hasło zapisane na komputerze Mac

    git config --global --unset user.password
    
  2. Dodaj nowe hasło za pomocą tego polecenia, zastąp je nowym hasłem:

    git config --global --add user.password <new_pass>
    
Luthfi Rahman
źródło
4
W ten sposób twoje hasło zostanie zapisane w historii, a każdy, kto uruchomi polecenie historii, może zobaczyć go jako zwykły tekst. Aby temu zapobiec, możesz dodać dodatkową spację przed poleceniem lub uruchomić polecenie „historia -d 1234” z odpowiednim identyfikatorem linii później
Lavandysh,
8

Jeśli twoje poświadczenia są przechowywane w pomocniku poświadczeń, przenośnym sposobem na usunięcie hasła utrwalonego dla określonego hosta jest wywołanie git credential reject:

$ git credential reject
protocol=https
host=bitbucket.org
⏎

lub

$ git credential reject
url=https://bitbucket.org
⏎

Następnie, aby wprowadzić nowe hasło, wpisz git fetch.

Marsu
źródło
2
ostrzeżenie: nieprawidłowa linia danych uwierzytelniających:? krytyczny: nie można odczytać referencji ze standardowego
pinei
7

Jest to zamieszanie w tym pytaniu, ponieważ w tym pytaniu jest zbyt dużo złożoności. Pierwszy MacOS vs. Win10. Następnie różne mechanizmy uwierzytelniania.

Zacznę tutaj skonsolidowaną odpowiedź i prawdopodobnie potrzebuję pomocy, jeśli nie otrzymam pomocy, będę pracował nad odpowiedzią, dopóki nie będzie kompletna, ale to zajmie trochę czasu.

Windows 10: | | -

MacOS: | |-- Using git config to store username and password: | git config --global --add user.password | |---- first time entry | git config --global --add user.password <new_pass> | |---- password update | git config --global --unset user.password | git config --global --add user.password <new_pass> | |-- Using keychain: | git config --global credential.helper osxkeychain | |---- first time entry | Terminal will ask you for the username and password. Just enter it, it will be | stored in keychain from then on. | |---- password update | Open keychain, delete the entry for the repository you are trying to use. | (git remote -v will show you) | On next use of git push or something that needs permissions, git will ask for | the credentials, as it can not find them in the keychain anymore.

użytkownik637338
źródło
To działa. Uruchom <git config --global --unset user.password>, a następnie <git push origin master> zapyta o nazwę użytkownika i hasło. Dzięki.
Renhuai
5

możesz zmienić hasło za pomocą wiersza polecenia w 2 miejscach, po czym można edytować poświadczenia, aby połączyć repozytorium

git config --edit 

Poświadczenia można również zmienić na poziomie globalnym za pomocą parametru globalnego, takiego jak poniżej

 git config --global --add user.password "XXXX"

lub ustaw pomocnika poświadczeń za pomocą

git config --global credential.helper wincred

ale jeśli masz poświadczenia na poziomie repozytorium, ustaw użycie pierwszego polecenia

git config --edit
Inny ty
źródło
5

Dla Maca

Jeśli masz wiele zdalnych repozytoriów (Github, Bitbucket, Job itp.)

1) uruchom w katalogu projektu

git config --unset user.password

2) uruchom zdalne polecenie git (np. Git push lub git pull)

Git poprosi cię o ponowne wprowadzenie nazwy użytkownika.nazwa.nazwa_pliku dla tego repozytorium

Możesz to zrobić globalnie, jeśli masz tylko jedno zdalne repozytorium

git config --global --unset user.password
Andrey
źródło
4

Jeśli używasz github i masz włączone uwierzytelnianie dwuskładnikowe, musisz wprowadzić osobisty token dostępu zamiast hasła

Najpierw zresetuj hasło:

git config --global --unset user.password

Następnie zaloguj się do swojego konta github, w prawym rogu kliknij Ustawienia, a następnie Ustawienia programisty. Wygeneruj token dostępu osobistego. Skopiuj to.

git push

Terminal wyświetli monit o podanie nazwy użytkownika: wprowadź swój adres e-mail.

W polu hasła wprowadź osobisty token dostępu.

Raphael Pinel
źródło
2

Spróbuję usunąć moje konto w Keychain Access, a następnie uruchomię git cloneponownie. Git poprosi mnie o nowe hasło.

Hiro
źródło
To właśnie postanowiłem zrobić. Miałem wiele kont github zapisanych w pęku kluczy. Zdecydowałem się je wszystkie usunąć. Z powodzeniem wypchnąłem mój lokalny oddział.
Trener Roebuck,
1
nie dobra odpowiedź. Ponowne klonowanie to zdecydowanie za dużo jak na to proste zadanie
Kanion Kolob
2

Próbowałem wszystkiego, ale nic nie działało. Potem działało.

  1. Przed wykonaniem któregokolwiek z powyższych kroków ponownie zablokuj i odblokuj brelok, ponieważ czasami może się zablokować.
  2. Zainstaluj GitHub Desktop - to pomaga.

źródło
Jak to robisz?
Shekhar Sahu
2

Dla tych, którzy szukają sposobu zresetowania dostępu do repozytorium. Na przykładzie GitHub. Możesz zmienić hasło do profilu GitHub i odwołać wszystkie „Tokeny dostępu osobistego” w „Ustawienia -> Ustawienia programisty” swojego profilu. Możesz także opcjonalnie wyczyścić wszystkie klucze SSH / PGP i aplikacje OAuth / GitHub, aby mieć pewność, że dostęp do repozytorium jest całkowicie zablokowany. W ten sposób wszyscy menedżerowie poświadczeń w dowolnym systemie zakończą się niepowodzeniem przy autoryzacji i poproszą cię o wprowadzenie nowych poświadczeń.

samodzielny
źródło
2

Poniższe kroki mogą rozwiązać problem .....

  1. Przejdź do folderu ~ / Library / Application Support / SourceTree
  2. Usuń plik {nazwa_użytkownika}@STAuth-bitbucket.org
  3. Uruchom ponownie Sourcetree
  4. Spróbuj pobrać, pojawi się pole hasła, podaj nowe hasło
  5. Można także uruchomić polecenie „git fetch” w terminalu i trzeba wpisać hasło
  6. Gotowy
emraz
źródło
1

W tym artykule wyjaśniają to w bardzo prosty sposób, ale w zasadzie musimy tylko wykonać, git remote set-url origin "https://<yourUserName>@bitbucket.org/<yourRepo>"a następnym razem, gdy git pullto git pushzrobisz, musisz podać hasło.

robertovg
źródło
1

moje hasło było dobre w preferencjach pulpitu github, ale nieprawidłowe w pliku .git / config

dla mnie jedynym działającym rozwiązaniem było ręczne edytowanie pliku: .git / config

który zawiera ten wiersz: url = https: // użytkownik: hasł[email protected]/user/repo.git

zmień hasło na DOBRE hasło, ponieważ było dla mnie starsze

Damien Mattei
źródło
0

Jeśli powyższe rozwiązania nie działają, spróbuj zmienić swój adres URL git.

git zdalny -v

git zdalny początek adresu URL

Sujith
źródło
0

Udało mi się zmienić hasło do git, przechodząc do Menedżera poświadczeń w systemie Windows i usuwając wszystkie wpisy git w obszarze poświadczeń systemu Windows 🡒 Ogólne poświadczenia.

Podczas wykonywania polecenia git pull lub git push system Windows zapyta o nowego użytkownika / hasło.

Shaurya Airi
źródło
0

W przypadku użytkowników MAC korzystanie z git GUI ( działa dla Sourcetree , może również działać dla innych). Chciałbym dodać małą uwagę do odpowiedzi Dereka ( https://stackoverflow.com/a/45703718/7138492 ). Oryginalna sugestia:

$ git config --global --unset user.password

po nim powinno następować push / pull / fetch ALE może nie działać po wykonaniu z GUI. Przypadkiem roboczym% 100 byłoby wykonanie pierwszego z rzędu polecenia git uruchamiającego polecenie z konsoli. Oto przykład:

  1. Znajdź katalog główny repozytorium git
  2. Wpisz $ git config --unset user.password
  3. Kontynuuj z poleceniem git w terminalu, np .: $ git push

Następnie poprosi Cię o podanie nowego hasła.

Serj Ardovic
źródło