2013-02-01 22 views
23

Ho aggiornato di recente la mia installazione git locale a 1.8.1 da 1.8.0.1.
Sto notando che, quando lavoro su github, non mi chiede più nome utente e password su push.git: forza richiesta utente e password

Questo mi disturba, poiché vedo dover digitare ogni volta utente e password come buona misura di sicurezza. (Cosa succede se qualcun altro usa il mio computer?)

ho controllato il seguente:

  • 1.8.0.1 su un altro computer chiede ancora nome utente e password.
  • il mio account su github applica ancora controlli privati ​​/ di sicurezza.
  • Sto usando i riferimenti remoti https, piuttosto che ssh.
  • Per buona misura, ho controllato il mio fondatore ~/.ssh. Niente di sbagliato lì.
  • Sono non memorizzando i dettagli di accesso in ~/.gitconfig o singoli file <proj>/.git/config.
  • Sono anche non memorizzando qualcosa relativo a Github in ~/.netrc.
  • Ho creato un nuovo archivio fittizio: ancora non mi viene richiesto il login.

Non ho trovato nulla nel git release notes archive.

Qualcuno sa se questo è un nuovo comportamento git? Come posso ripristinare il prompt?
Acclamazioni

+0

Hai un '% HOME% \ _ netrc' file con le tue credenziali in esso? (come in http://stackoverflow.com/questions/11021803/need-github-without-username-and-password/11022181#11022181) Oppure hai attivato un tipo di caching delle credenziali? (come in http: // StackOverflow.it/questions/6191985/git-http-securely-remember-credentials/12938677 # 12938677) O stai lavorando con GitHub per Windows? – VonC

+0

Grazie. Sto lavorando su OS X. Ho un file '~/.netrc', ma non c'è nulla di github collegato lì (ho dimenticato di dirlo, aggiungendolo ora). Con 'git config -l' ora vedo che ho un'opzione' credential.helper = osxkeychain'. Grazie, leggerò le manpage. Potresti espandere il tuo commento come risposta? – tompave

+0

Commento espanso come risposta, con collegamenti a riferimenti. – VonC

risposta

11

Con git config -l, io ora vedere ho un credential.helper=osxkeychain opzione

Ciò significa che il credential helper (inizialmente introdotto nel 1.7.10) è ora a tutti gli effetti, e memorizza nella cache automaticamente la password per accedere a un repository remoto su HTTP.
(come in "GIT: Any way to set default login credentials?")

è possibile disabilitare l'opzione del tutto, o only for a single repo.

+0

grazie. mi ci è voluto un po 'perché, per qualche ragione, l'opzione era nel file di configurazione '--system', piuttosto che in' --global'. Mi chiedo ancora come sia entrato in funzione. – tompave

+0

Hai installato GitExtensions o qualsiasi altro client, che lo ha acceso? Non ricordo di averlo acceso fino a quando non ho installato GitExtensions. – RuntimeException

+0

Apparentemente, questa potrebbe essere la causa. Il demone della cache delle credenziali. Non sono sicuro se lo stesso è la causa su Windows però. https://stackoverflow.com/a/15382950/15789 – RuntimeException

41

Aggiungi un flag -v con il comando git. per esempio. git pull -v

v sta per verificare.

+0

Grazie, ha funzionato! – dotnetguy

+0

ha funzionato anche per me. Strano che nulla sia menzionato nelle pagine man git. –

+1

@joao Ho visto uno dei miei colleghi che utilizzava questo comando e l'ho ricordato subito. Mai visto questo ovunque documentato pure. Assomiglia più ad una bandiera - verbo, non è sicuro del motivo per cui funziona :) – sapy

4

Poiché la questione è stato marcato con Github, aggiungendo un altro a distanza come https_origin e aggiungere il collegamento https può costringere sempre di inserire la password:

git remote add https_origin https://github.com/.../... 
Problemi correlati