Подтвердить что ты не робот

Адрес электронной почты Commiter не совпадает с IntelliJ, даже изменяя его, чтобы исправить один

Когда я пытаюсь вытащить свои коммиты из репозитория git в удаленный репозиторий gerrit из среды Linux в идее IntelliJ, я получаю следующую ошибку:

remote: ERROR:  committer email address ***** [K
remote: ERROR:  does not match your user account.[K

Даже если я изменил настройки на правильные для git и gerrit (я вижу, что на: git config -l с консоли), он по-прежнему выбирает старое "неправильное" электронное письмо.

Что может быть неправильным?

4b9b3361

Ответ 1

вам нужно перенастроить свой адрес электронной почты

$ git config user.email <your email>
$ git commit --amend --reset-author

git commit --amend обновляет последние коммиты

Ответ 2

Вы можете установить имя пользователя и адрес электронной почты для интеграции GIT следующим образом. Это поможет вам преодолеть проблему несоответствия.

Перейдите в свой проект, где git инициализирован.

Затем включите скрытые папки, найдите ".git" и перейдите в папку.

Найдите файл с именем "config", добавьте приведенный ниже код и сохраните.

[user]
      name = username
      email = [email protected]

Введите правильное имя пользователя и адрес электронной почты соответственно. Это будет выбрано навсегда, если вы не пойдете и не измените его.

Ответ 3

Как Фредерик Анри упоминает, вы должны правильно настроить свою электронную почту через git config user.email или напрямую, отредактировав файл \.git\config в своей папке репо.

Одна важная вещь, которая может остаться незамеченной, заключается в том, что вы должны обновить все предыдущие коммиты, содержащие сообщение об ошибке. Git будет жаловаться на шаблон электронной почты, но не будет упоминать, какой коммит является проблематичным.

Вы можете использовать git rebase или git reset, а затем, как только вы подтвердите, вы можете успешно нажать!

Ответ 4

Я столкнулся с той же проблемой, когда пытался перейти от Git к Gerrit. Возможный конфликт заключается в том, что код был клонирован из идентификатора входа в систему git, а при попытке отправки он перепроверяется с помощью учетных данных Gerrit. Эти 2 являются разными, конфликт брошен. Решил это, выполнив эти 2 команды: