2013-08-10 20 views
11

Chcę, aby moje hasło zostało zapomniane, więc muszę je wpisać ponownie.git credential.helper = cache nigdy nie zapomni hasła?

mam setup to:

git config credential.helper 'cache --timeout=600' 

ale znacznie później na kilka dni, to nadal pamięta hasło i nie pytaj mnie ponownie ...

git wersji 1.7.10.4 (w Ubuntu)

czy napotkałem błąd? (jak widzę podobne pytania, ale żaden nie znalazłem, że odpowiedzi to ...)

EDYCJA: czy coś mi brakuje?

EDYCJA: teraz wiem, że commit jest lokalny, a push jest zdalny. ALE moje commits (z RabbitVCS Git nautilus addon) wydają się wykonywać push, gdy zdalne repo jest aktualizowane ... Kiedy wydaję push, prosi o hasło ... ale z poleceniem commit nie pyta ORAZ wykonuje zdalna aktualizacja; Sprawdziłem, że 4 godziny temu mój commit aktualizowane serwera zdalnego :(

+1

A ja z widokiem na Dokładne przeciwieństwo tego problemu - nawet po określeniu limitu czasu wynoszącego 999999 (~ 11 dni), nawet go nie pamięta przez pół dnia. – aalaap

Odpowiedz

22

Problem 1: "chcą moje hasło do bycia zapomnianym" przez git

Problem 2 (domniemanych): sprzeczne ustawienia konfiguracyjne

Odpowiedź:

git config --unset-all credential.helper 
git config --global --unset-all credential.helper 
git config --system --unset-all credential.helper 

Objaśnienie: konfiguracja GIT podano w trzech miejscach.

  1. (repository_home)/git/konfiguracji ....................... .... dla repozytorium przedmiotowego.
  2. ~/.gitconfig .......................... dla tego konkretnego użytkownika.
  3. /etc/gitconfig....................... dla wszystkich użytkowników w tym systemie.

Powyższe polecenia usunie wszystkie ustawienia związane z poświadczeniami na poziomie repozytorium, użytkownika i systemu ... co (jak sądzę) odpowiada na twoje pytanie.

jednak, że brzmi to jak Twój problem może być ograniczone do konieczności jakąś sprzeczność konfiguracji związanej jeden opcją credential.helper, cache. Jeśli chcesz zresetować tylko tę opcję, wykonaj następujące czynności:

git config --unset credential.helper 'cache' 
git config --global --unset credential.helper 'cache' 
git config --system --unset credential.helper 'cache' 

...następnie ustawić limit czasu na odpowiednim poziomie, każdy z:

git config --set credential.helper 'cache --timeout=600' 
git config --global --set credential.helper 'cache --timeout=600' 
git config --system --set credential.helper 'cache --timeout=600' 

więcej, zapoznaj się z doskonałą dokumentację tutaj:

  1. git config command
  2. git credential caching
+1

dla nowszych wersji git zmień '--set' na' --add'. (patrz dokumentacja w 'git help config') – epineda