2013-02-02 11 views
67

Questa domanda sembra un duplicato, ma in realtà non lo è. Solo una piccola differenza che continua a ripetere. git continua a dirmi: "per favore dimmi chi sei", anche dopo averlo creato. quando ho eseguito git commit, questo è quello che ho ....Perché Git non mi consente di eseguire il commit anche dopo la configurazione?

$ git commit 

*** Please tell me who you are. 

Run 

git config --global user.email "[email protected]" 

git config --global user.name "Your Name" 

to set your account's default identity. 
Omit --global to set the identity only in this repository. 

fatal: unable to auto-detect email address (got '[email protected](none)') 

Ma quando corro git config --global -l, me tutti i miei dati dà ...

$ git config --global -l 
user.name=myname 
[email protected] 
http.proxy=proxy.XX.XX.XX:XXXX 

ho cambiato il mio nome, e-mail e proxy ma stanno comparendo bene quando eseguo il comando, anche nel file .gitconfig posso vedere che i valori sono impostati. quale potrebbe essere la cosa mancante, perché non posso assolutamente impegnarmi. Ogni volta continua a chiedermi chi sono?

@sheu mi ha detto qualcosa che ho cambiato, ma ancora lo stesso problema. quando ho impostato --local, ancora git commit mi fa la stessa domanda. questo è l'uscita

$ git config --local -l 
core.repositoryformatversion=0 
core.filemode=false 
core.bare=false 
core.logallrefupdates=true 
core.symlinks=false 
core.ignorecase=true 
core.hidedotfiles=dotGitOnly 
user.name=myname 
[email protected] 
+0

Forse questo post può essere la risposta alla tua domanda http://stackoverflow.com/questions/2936652/git-push-wont-do-anything-everything-up-to-date –

+0

@SumitMunot, i non è stato possibile trovare qualcosa di utile ... ho solo il ramo master e nessun altro – Obby

+3

@ SumitMunot quando suggerisco modifiche, per favore evita di aggiungere elementi come "Please Help" e "Thanks in advance". Frasi come quelle sono scoraggiate in quanto aggiungono rumore inutile alla domanda. Inoltre, stai attivamente cambiando i titoli per le domande, ma in molti casi manca il verbo "È". Assicurati di utilizzare la grammatica corretta quando suggerisci modifiche. – psubsee2003

risposta

138

Questo è un errore di battitura. Hai accidentalmente impostato user.mail senza e. Risolvere il problema impostando user.email nella configurazione globale con

git config --global user.email "[email protected]" 
+0

grazie ... non potevo nemmeno capirlo. il problema di premere la freccia su invece di scrivere di nuovo – Obby

+0

Wow! Ha risolto il mio problema. +10 punti –

+0

Grazie amico .. Risolto il mio anche – Zohair

9

Stai impostando le opzioni di git globali, ma alla cassa locale ha forse le sostituzioni set. Prova a impostarli di nuovo con git config --local <setting> <value>. È possibile guardare il file .git/config nel checkout locale per vedere quali sono le impostazioni locali che il checkout ha definito.

+0

che non ha funzionato. qualsiasi altra opzione – Obby

+0

lumen ha ottenuto la risposta. – Obby

+2

ha funzionato anche per me – Gjaa

3

Hai un locale user.name o user.email che sta sovrascrivendo quella globale?

git config --list --global | grep user 
    user.name=YOUR NAME 
    [email protected] 
git config --list --local | grep user 
    user.name=YOUR NAME 
    user.email= 

Se è così, rimuoverli

git config --unset --local user.name 
git config --unset --local user.email 

Le impostazioni locali sono per-clone, quindi dovrete per disinserire il locale user.name e user.email per ciascuno dei pronti contro termine sulla vostra macchina.

Problemi correlati