¿Por qué Git no me permite comprometerme incluso después de la configuration?

Esta pregunta parece un duplicado, pero realmente no lo es. Solo una pequeña diferencia que sigue repitiéndose. git sigue diciéndome: "por favor dime quién eres", incluso después de configurarlo. cuando ejecuto git commit , esto es lo que obtengo …

 $ git commit *** Please tell me who you are. Run git config --global user.email "you@example.com" 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 'Obby@ObbyWorkstation.(none)') 

Pero cuando ejecuto git config --global -l , me da todos mis detalles …

 $ git config --global -l user.name=myname user.mail=me.myself@gmail.com http.proxy=proxy.XX.XX.XX:XXXX 

He cambiado mi nombre, mi correo electrónico y mi proxy pero están apareciendo bien cuando ejecuto el command, incluso en el file .gitconfig puedo ver que los valores están establecidos. lo que podría ser lo que falta, porque no puedo comprometerme en absoluto. ¿Siempre me pregunta quién soy?

@sheu me dijo algo que cambié, pero sigue siendo el mismo problema. cuando configuro --local , still git commit me hace la misma pregunta. esta es la salida

 $ 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 user.mail=me.myself@gmail.com 

Eso es un error tipográfico Has configurado accidentalmente user.mail sin e . Solucionarlo configurando user.email en la configuration global con

 git config --global user.email "you@example.com" 

Está configurando las opciones globales de git, pero es probable que el process de pago local tenga habilitadas las modificaciones. Intente configurarlos nuevamente con git config --local <setting> <value> . Puede ver el file .git/config en su caja local para ver qué configuraciones locales ha definido el pago.

¿Tiene un user.name o user.email local que está anulando el global?

 git config --list --global | grep user user.name=YOUR NAME user.email=YOUR@EMAIL git config --list --local | grep user user.name=YOUR NAME user.email= 

Si es así, eliminarlos

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

La configuration local es por clonación, por lo que tendrá que desactivar el nombre de user.name local y el user.email de user.email para cada uno de los repositorys de su máquina.