Why Git is not allowing me to commit even after configuration?

This question seems like a duplicate but it’s really not. Just a slight difference that keeps on repeating. git keeps on telling me: “please tell me who you are”, even after setting it up. when I run git commit, this is what I get….

$ git commit

*** Please tell me who you are.


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)')

But when I run git config --global -l, it gives me all my details…

  • Will a commit be garbage collected if it's referred to by tag but not by branch?
  • How to revert a 'git filter-branch -f --env-filter'
  • GIT: how to force a merge commit to an ancestor
  • How can I make sure my commit has really happened?
  • Remove a merge commit, keeping current changes
  • Temporarily switch working copy to a specific Git commit
  • $ git config --global -l

    I have changed my name, email and proxy but they are appearing fine when I run the command, even in the .gitconfig file I can see the values are set. what could be the missing thing, because I cannot commit at all. Every time it keeps asking me who I am ?

    @sheu told me something that i changed, but still the same problem. when i set --local, still git commit asks me the same question. this is the output

    $ git config --local -l

  • What is the role of Project Owners group in Gerrit?
  • Git: What is the index
  • Is there a way to customize the output of git blame?
  • Anyone know how to export Accurev to another VCS?
  • How to check out most recent git tag using Ansible?
  • Apache and GitLab on same server
  • 3 Solutions collect form web for “Why Git is not allowing me to commit even after configuration?”

    That’s a typo. You’ve accidently set user.mail with no e. Fix it by setting user.email in the global configuration with

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

    You’re setting the global git options, but the local checkout possibly has overrides set. Try setting them again with git config --local <setting> <value>. You can look at the .git/config file in your local checkout to see what local settings the checkout has defined.

    Do you have a local user.name or user.email that’s overriding the global one?

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

    If so, remove them

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

    The local settings are per-clone, so you’ll have to unset the local user.name and user.email for each of the repos on your machine.

    Git Baby is a git and github fan, let's start git clone.