Как вы изменяете электронную почту git commit для коммита без электронной почты? - PullRequest
0 голосов
/ 23 сентября 2019

Я работал над проектом с группой людей и только что приобрел новый компьютер.После завершения этого проекта я понял, что забыл настроить свой адрес электронной почты локально, чтобы мои коммиты были помечены как мой адрес электронной почты.Вместо этого все мои коммиты только под моим именем, и мои вклады не отображаются в репозитории или на странице моего профиля.Есть ли способ исправить это вручную?

Я пытался использовать интерактивный git rebase и проходить коммиты индивидуально, но каждый раз, когда я меняю автора и двигаюсь дальше, по какой-то причине я получаю конфликт слияния.Я не уверен, что решение этого конфликта изменит конечное состояние хранилища, поэтому я не уверен, как с этим справиться.Я также пытался использовать git filter-branch, но я не уверен, как это работает, поэтому я не уверен, правильно ли я это делаю

git filter-branch --env-filter '
if test "$GIT_AUTHOR_NAME" = COMMITED_NAME; then
  GIT_AUTHOR_EMAIL= MY_EMAIL
fi'

Запуск, который дал мне эту ошибку:line 406: test: too many arguments

Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 23 сентября 2019

Со всеми исправлениями, обсуждаемыми в комментариях, код должен выглядеть следующим образом:

git filter-branch --env-filter '
if test "$GIT_AUTHOR_NAME" = "COMMITED_NAME"; then
  GIT_AUTHOR_EMAIL=MY_EMAIL
  export GIT_AUTHOR_EMAIL
fi'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...