Изменить адрес электронной почты в Git


100

У меня есть проект, размещенный в Git stash. Он построен с использованием Дженкинса. Теперь я сделал опечатку при локальной установке Git. Как @ ab.com вместо @ abc.com

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

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

Как я могу это исправить?


Попробуйте Editable Email Notificationв Post-build Actions. Вы можете определить список получателей с помощью буквальных строк или переменных адресов электронной почты. Что касается неправильного адреса электронной почты в ранних коммитах, вы можете использовать git filter-branch --env-filterдля изменения. Но это переписывает историю коммитов. Не рекомендуется.
ElpieKay

Я знаю об этапе сборки поста. Вот как я сейчас решаю проблему.
mani_nz

Ответы:


165

Адрес электронной почты, установленный локально (отдельно для каждого репозитория)

  1. Откройте Git Bash.

  2. Измените текущий рабочий каталог на локальный репозиторий, в котором вы хотите установить электронную почту конфигурации Git.

  3. Установите свой адрес электронной почты с помощью следующей команды:

git config user.email "your_email@abc.com"
  1. Подтвердите, что вы правильно установили свой адрес электронной почты, с помощью следующей команды.
git config user.email

Адрес электронной почты, установленный глобально (используется, только если ничего не установлено локально)

  1. Откройте Git Bash.

  2. Установите свой адрес электронной почты с помощью следующей команды:

git config --global user.email "your_email@abc.com"
  1. Подтвердите, что вы указали свой адрес электронной почты:
git config --global user.email

Или используя переменные среды

  1. GIT_COMMITTER_EMAIL=your_email@abc.com
  2. GIT_AUTHOR_EMAIL=your_email@abc.com

PD: информация из официального руководства github


Я уже сделал это, и адрес электронной почты изменен в git. Но Дженкинс по-прежнему ссылается на старый адрес электронной почты от Git .. Странно !!
mani_nz

5
У уже сделанных вами коммитов будет старый адрес электронной почты. Только новые коммиты будут иметь новый адрес электронной почты. Если вы хотите изменить адрес электронной почты в существующих коммитах, узнайте, как изменить автора коммита .
fracz

21

Согласно документации git, все, что вам нужно сделать, это перезапустить

$ git config --global user.name "John Doe"  
$ git config --global user.email johndoe@example.com  

Затем просто убедитесь, что изменение вступило в силу.

$ git config --list

Это указано в книге Pro Git , написанной Скоттом Чаконом и Беном Штраубом.

1.6 Начало работы - Первоначальная установка Git


3

использовать

"git -c user.name =" ваше имя "-c user.email=youremail@email.com commit --amend --reset-author"


0

Отредактируйте электронную почту прямо в JENKINS_HOME/users/YOUR_NAME/config.xmlфайле конфигурации и перезапустите сервер Jenkins.


0

Чтобы установить глобальную конфигурацию имени пользователя и электронной почты:

  1. Откройте командную строку.

  2. Задайте свое имя пользователя:

    git config --global user.name "FIRST_NAME LAST_NAME"

  3. Укажите свой адрес электронной почты:

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

Чтобы установить конфигурацию имени пользователя / электронной почты для конкретного репозитория:

  1. Из командной строки перейдите в каталог репозитория.

  2. Задайте свое имя пользователя:

    git config user.name "FIRST_NAME LAST_NAME"

  3. Укажите свой адрес электронной почты:

    git config user.email "MY_NAME@example.com"

  4. Проверьте свою конфигурацию, отобразив файл конфигурации:

    кошка .git / config

Для получения дополнительной информации и для других систем контроля версий .. => SeeThis

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.