Как защитить свои личные адреса электронной почты в Git и Github?

Опубликовано: 1 Сентября, 2022

Если вы используете git и любую платформу для размещения кода, такую как Github, Bitbucket, Gitlab и т. д., для загрузки/фиксации своего кода, возможно, вы публично раскрываете свои личные адреса электронной почты. В этой статье основное внимание уделяется тому, как именно раскрываются ваши личные адреса электронной почты и что вы можете сделать, чтобы защитить их!

Настройка Git CLI:

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

git config --global user.email <your-email>
git config --global user.name <your-name>

Вы можете использовать любые адреса электронной почты . Но вы должны были использовать адрес электронной почты который связан с вашей учетной записью GitHub .

The email address linked with Github ensures that commits are attributed to you and appear in your contributions graph.

Git фиксирует вашу электронную почту:

Теперь, когда вы настроили Git CLI , вы должны закоммитить свой код и отправить его в общедоступный репозиторий, все коммиты git будут содержать следующую информацию:

  • Зафиксировать хэш
  • Имя автора <Адрес электронной почты>
  • Дата и время
  • Сообщение фиксации

Несмотря на то, что веб-интерфейс Github не показывает личный адрес электронной почты, можно клонировать общедоступный репозиторий и запустить git log , чтобы просмотреть историю коммитов, и там будут видны ваши личные адреса электронной почты!

Чтобы получить все электронные письма из журнала git , вы можете использовать этот однострочный код (в Linux/Git Bash) :

ШАГИ:

  1. Клонируйте репозиторий Github
  2. cd в клонированный репозиторий
  3. Запустите однострочный:
git log | grep Author | cut -d ":" -f2 | sort -u | awk "{print $NF}" | sed -r "s/<// ; s/>//"

Как защитить?

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

1. Настройки Гитхаба:

Github предоставляет два варианта защиты ваших личных адресов электронной почты от раскрытия. Перейдите в «Ваш профиль» -> «Электронная почта» и включите следующие параметры:

  1. Держите мои адреса электронной почты в секрете.
  2. Заблокировать отправку командной строки, раскрывающую мою электронную почту.

Примечание. Приведенные выше параметры могут отличаться в Bitbucket, Gitlab и других платформах для размещения кода.

2. Изменения в Git CLI:

Включив второй вариант в настройках Github, любая дальнейшая фиксация, содержащая ваш личный адрес электронной почты, будет заблокирована. Теперь вам нужно настроить Git CLI, чтобы он не включал ваш личный адрес электронной почты.

  • Вы можете использовать любой случайный адрес электронной почты, например , email@example.com . Но проблема в том, что ваши коммиты не будут приписываться вам!
  • В качестве альтернативы Github предоставляет фиктивный идентификатор электронной почты (выделенный на предыдущем изображении), который гарантирует, что коммиты приписываются вам и отображаются на графике ваших вкладов.

Any commits you made prior to changing your commit email address are still associated with your previous email address. You must delete your whole commit history to get rid of that email address.

Измените адрес электронной почты с помощью команды git:

git config --global user.email <dummy-github-email>