У меня есть серверы приложений, которые я загружаю вместе, используя Chef + некоторые специальные сценарии bash. Проблема в том, что когда я хочу запустить обновление на одном из этих серверов приложений, я получаю:
19:00:28: *** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
Действительно ли мне нужно настроить это на простое git pull origin master
каждый раз, когда я обновляю сервер приложений? Есть ли способ переопределить это поведение, чтобы оно не выдавало ошибку, если имя и адрес электронной почты не установлены?
git pull
собирается создать коммит, потому что он сделал слияние, например.Ответы:
Я трачу на это много часов, когда я вызываю php-скрипт для инициализации и принятия мерзавца. И я обнаружил, что рабочий процесс должен быть:
Если вы поменяете местами [23] и 1, конфигурация не будет работать вообще.
Жаль, что это поможет.
источник
--global
переключатель кgit config
командам и сделать это один раз для своей учетной записи ОС. После этого шаги 2-3 не нужны.Вместо этого
git pull
вы можете сделать:Ни один из них не требует настройки вашего имени пользователя / адреса электронной почты git.
Это уничтожит любые незафиксированные локальные изменения / коммиты и оставит ваш HEAD, указывающий на коммит (не ветвь). Но ни один из них не должен быть проблемой для сервера приложений, поскольку вы не должны вносить локальные изменения или фиксировать этот репозиторий.
источник
git fetch && git reset --hard HEAD
?git reset --hard HEAD
просто отбрасывает ваши несвязанные изменения, это не меняет того, на чем основан ваш коммит (поскольку по определению вы уже находитесь в HEAD)Если вы используете sourcetree: Репозиторий -> Настройки репозитория -> Дополнительно -> снимите флажок «Использовать глобальные настройки пользователя»
отлично работал для меня.
источник
это работает для меня, попробуйте это .. вам нужно настроить свой терминал с удаленным доступом.
источник
Обновите процесс начальной загрузки, чтобы создать
${HOME}/.gitconfig
соответствующий контент или скопировать уже существующий.источник
Это отлично сработало для меня.
источник
Та же проблема была со мной, и я решил ее, добавив имя по умолчанию и настройки репозитория электронной почты.
Как предположил Дорон,
Если вы используете sourcetree: Репозиторий -> Настройки репозитория -> Дополнительно -> снимите флажок «Использовать глобальные настройки пользователя».
Добавьте имя по умолчанию и адрес электронной почты.
источник
В моем случае мне не хватало «е» в слове «электронная почта», как сказал Чад выше, но я вижу, что это не так с вами. Пожалуйста, нажмите следующую команду, чтобы увидеть, все ли тянет, как ожидалось.
источник
Вы должны написать свой адрес электронной почты, как это
Затем: напишите имя пользователя
После этого появится окно Poupup
Напишите ИМЯ ПОЛЬЗОВАТЕЛЯ И ЭЛЕКТРОНУ
источник
Для меня проблема заключалась в сетевом подключении, после того как я снова подключился к своему Wi-Fi, он мог получить данные и зафиксировать без каких-либо проблем.
источник
Он запросит только один раз и убедится, что открытый ключ rsa для этого компьютера добавлен в вашу учетную запись github, для которой вы пытаетесь зафиксировать или передать запрос на удаление.
Более подробную информацию об этом можно найти здесь
источник
У меня было это как сообщение об ошибке:
git pull
нормально работала строка cmd,git pull
не удалась в процессе Perl CGI (webhook для автоматического развертывания из github) с вышеуказанной ошибкой.Делаем
git status
выявленный конфликтующий файл. Сортировка исправила проблему.Проблема возникла позже, когда я изменил некоторые настройки конфигурации.
На этот раз установка переменных $ HOME и $ USER env исправила это (по умолчанию не устанавливается в процессе CGI)
источник
Посмотрите на файл конфигурации.
Репозиторий> Настройки репозитория> Редактировать файл конфигурации.
Проверьте, существует ли
[user]
раздел. Если пользовательский раздел отсутствует, добавьте его.Пример:
источник
я использую heroku cli 1. должен использовать все имя пользователя и адрес электронной почты пользователя
$ git config --global user.email .login email.
$ git config --global user.name .heroku name.
мерзавец добавить *
5 git commit -m "после конфигурации user.name, email пользователя"
гит пуш герой мастер
источник
Я использовал Jenkins и столкнулся с этой проблемой при попытке выполнить релиз (который требует git commit). Чтобы устранить проблемы, мне нужно было добавить пользовательское имя пользователя / адрес электронной почты (см. Рисунок). Это гарантировало, что при извлечении кода использовались имя / адрес электронной почты моего пользователя сборки при выполнении выпуска. Обратите внимание, что эта конфигурация доступна из конфигурации проекта Jenkins Multibranch Pipeline.
источник
git pull
не должен этого требовать. Однако, если вытягивание вызывает конфликт слияния, то оно кажется необязательным.источник
ИМХО, правильный способ устранить эту ошибку - настроить глобальный файл конфигурации git.
Для этого выполните следующую команду:
git config --global -e
Появится редактор, куда вы сможете вставить свои стандартные настройки git.
Вот несколько из них:
Для получения дополнительной информации см. Настройка Git - Конфигурация Git
Когда вы видите команду, как,
git config
...... вы можете поместить это в свой глобальный конфигурационный файл git как:
Для одноразовых конфигураций вы можете использовать что-то вроде
git config --global user.name 'your_username'
Если вы не устанавливаете свои конфигурации git глобально, вам придется делать это для каждого репозитория git, с которым вы работаете локально.
Настройки user.name и user.email сообщают git, кто вы, поэтому последующие
git commit
команды не будут жаловаться,*** Please tell me who you are.
Много раз, команды git предполагают, что вы выполняете не то, что вы должны запускать. На этот раз предлагаемые команды неплохие:
Совет: До тех пор, пока я не очень хорошо ознакомился с git, я сделал резервную копию файла моего проекта - перед запуском предложенных команд git и изучением вещей, которые, как я думал, будут работать, - несколько раз сохранял бекон.
источник
Невозможно автоматически определить адрес электронной почты.
По умолчанию это принимает ваше имя пользователя системы, как
abc@xyz.none
.Таким образом, вам нужно настроить адрес электронной почты, как показано ниже:
После настройки электронной почты вы можете запустить команды git и зафиксировать ваши изменения.
источник
Я столкнулся с этим сообщением об ошибке, пытаясь зафиксировать некоторые файлы.
Просто запуск,
git fetch
затем попытка моего коммита снова сработал для меня.источник
Для исправления я использую: git config --global user.email "you@example.com" и работает.
user.mail нет работы, нужно поставить E. Typo возможно?
источник
Это опечатка. Вы случайно установили «user.mail» без « e ». Исправьте это, установив «user. E mail» в глобальной конфигурации с помощью
git config --global user.email "you@example.com"
Нашел решение здесь
https://stackoverflow.com/a/14662703
источник