2013-08-10 14 views
11

Voglio che la mia password sia dimenticata, quindi devo digitare di nuovo.git credential.helper = cache non dimentica mai la password?

Ho installato questo:

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

ma molto più tardi, diversi giorni, ricorda ancora la password e non mi chiede di nuovo ...

git versione 1.7.10.4 (a Ubuntu)

ho incontrato un bug? (come vedo domande simili ma nessuna ho trovato che risponda a questo ...)

EDIT: o mi manca qualcosa?

EDIT: ora so che commit è locale e push è remoto. MA i miei commit (con RabbitVCS Git nautonus addon) sembrano eseguire il push mentre il repository remoto viene aggiornato ... Quando rilascio il numero push, richiede la password ... ma con il comando commit non chiede E esegue il aggiornamento remoto; Ho controllato che 4 ore fa il mio commit aggiornato il server remoto :(

+1

E sto di fronte al l'esatto opposto di questo problema - anche dopo aver specificato un timeout di 999999 (~ 11 giorni), non lo ricorda nemmeno per mezza giornata. – aalaap

risposta

22

Problema 1: "voglio che la mia password per essere dimenticato" di git

Problema 2 (implicite): le impostazioni di configurazione contraddittorie

risposta:

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

Spiegazione: configurazione Git è specificato in tre punti:.

  1. (repository_home)/git/config ....................... .... per il repository soggetto.
  2. ~/.gitconfig .......................... per questo particolare utente.
  3. /etc/gitconfig....................... per tutti gli utenti su questo sistema.

I comandi sopra riportati rimuoveranno tutte le impostazioni relative alle credenziali a livello di repository, utente e sistema ... che (penso) risponda alla tua domanda.

Tuttavia, sembra che il problema può essere limitata ad avere una sorta di contraddizione di configurazione relativi a uno possibilità di credential.helper, cache di. Se preferisci reimpostare solo questa opzione, procedi nel seguente modo:

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

...quindi impostare il timeout al livello appropriato, qualsiasi:

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' 

Per di più, si veda l'eccellente documentazione qui:

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

per le versioni più recenti di git cambia '--set' a' --add'. (vedere il documento in 'git help config') – epineda

Problemi correlati