Этот вопрос кажется повторяющимся, но на самом деле это не так. Просто небольшая разница, которая продолжает повторяться. git продолжает говорить мне: «пожалуйста, скажите, кто вы», даже после его настройки. когда я бегу git commit
, вот что я получаю ...
$ 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)')
Но когда я бегу git config --global -l
, он дает мне все мои данные ...
$ git config --global -l
user.name=myname
user.mail=me.myself@gmail.com
http.proxy=proxy.XX.XX.XX:XXXX
Я изменил свое имя, адрес электронной почты и прокси-сервер, но они отображаются нормально, когда я запускаю команду, даже в файле .gitconfig я вижу, что значения установлены. что может быть недостающим, потому что я вообще не могу совершить. Каждый раз меня спрашивают, кто я?
@sheu сказал мне кое-что, что я изменил, но все та же проблема. когда я установил --local
, все еще git commit
задает мне тот же вопрос. это результат
$ 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
user.email
в глобальной конфигурации (обратите внимание на e в электронном письме)?Ответы:
Это опечатка. Вы случайно установили
user.mail
без e . Исправьте это, установивuser.email
в глобальной конфигурации с помощьюисточник
Вы устанавливаете глобальные параметры git, но для локальной проверки, возможно, установлены переопределения. Попробуйте снова установить их с помощью
git config --local <setting> <value>
. Вы можете просмотреть.git/config
файл в локальной кассе, чтобы узнать, какие локальные настройки определены в кассе.источник
У вас есть локальный
user.name
или онuser.email
заменяет глобальный?Если да, удалите их
Локальные настройки относятся к каждому клону, поэтому вам придется отключить локальные
user.name
иuser.email
для каждого репозитория на вашем компьютере.источник
У меня была эта проблема даже после правильной настройки конфигурации.
git config
Мой сценарий выдавал команду git через супервизор (в Linux). При дальнейшей отладке супервизор не читал конфигурацию git из домашней папки. Следовательно, мне пришлось установить переменную HOME среды в конфигурации супервизора, чтобы она могла правильно найти конфигурацию git. Странно, что супервизор не смог найти конфигурацию git только по имени пользователя, настроенному в конфигурации супервизора (/etc/supervisor/conf.d).
источник