2016-05-19 2 views
1

ПроблемаИзменить имя пользователя, к которому мои фиксаций зачисляются на GitLab

В какой-то момент времени, я использовал команду git config --global user.name = "MyUsername", но способ сделать это на самом деле git config --global user.name "MyUsername", так что же случилось, что мое имя пользователя было установлен на =.

С тех пор я сменил это на MyUsername, но мои коммиты по-прежнему зачисляются на = на графиках на GitLab. Однако адрес электронной почты является правильным.

Wrong GitLab username

Вопрос

Есть ли способ изменить это имя? Комиты зачисляются на мой правильный адрес электронной почты, поэтому я предполагаю, что должен быть способ просто изменить, какое имя пользователя связано с этим адресом электронной почты?

Предостережения

Моя страница профиля показывает мое правильное имя пользователя.

enter image description here

Side Примечание: Отдельный сервер Gitlab.

Мои коммиты также отображаются с правильным именем пользователя. Пример:

enter image description here

+0

'git filter-branch --env-filter' может помочь. Пожалуйста, прочитайте о '--env-filter' в разделе Примеры' git filter-branch -help'. – ElpieKay

+0

Возможно, но это переписывает историю (хэши) этих коммитов, поскольку расчет хэша учитывает авторские имена. Если есть другие, использующие вашу историю перезаписи репо, не рекомендуется. –

+0

@NishantShreshth - Да, это почти не может быть и речи. Хотя группа небольшая (<10 разработчиков), проект большой, и я не уверен в своей способности безопасно переписывать историю. – Alec

ответ

-1

У меня была такая же проблема, вот как это сделать.

https://www.git-tower.com/learn/git/faq/change-author-name-email

Если вы хотите, чтобы запустить сценарий они упоминают

$ git filter-branch --env-filter ' 
WRONG_EMAIL="[email protected]" 
NEW_NAME="New Name Value" 
NEW_EMAIL="[email protected]" 

if [ "$GIT_COMMITTER_EMAIL" = "$WRONG_EMAIL" ] 
then 
    export GIT_COMMITTER_NAME="$NEW_NAME" 
    export GIT_COMMITTER_EMAIL="$NEW_EMAIL" 
fi 
if [ "$GIT_AUTHOR_EMAIL" = "$WRONG_EMAIL" ] 
then 
    export GIT_AUTHOR_NAME="$NEW_NAME" 
    export GIT_AUTHOR_EMAIL="$NEW_EMAIL" 
fi 
' --tag-name-filter cat -- --branches --tags 

вам необходимо открыть C: \ Program Files \ Git \ Bin \ SH.exe оболочки, или на Linux везде, где вы держите это.

Затем, как только вы откроете приглашение оболочки, вы можете вставить его в скрипт.

+1

Ссылка на решение приветствуется, но, пожалуйста, убедитесь, что ваш ответ полезен без него: [добавить контекст вокруг ссылки] (// meta.stackexchange.com/a/8259), чтобы у ваших коллег было некоторое представление о том, что это такое и почему он там, затем укажите наиболее релевантную часть страницы, на которую вы ссылаетесь, в случае недоступности целевой страницы. [Ответы, которые немного больше, чем ссылка, могут быть удалены.] (// stackoverflow.com/help/deleted-answers) – paper1111

+0

@ paper1111 Выполнено. на самом деле, я могу вернуться и добавить контент, прежде чем я увижу ваш комментарий. Кроме того, ссылка работает для меня, не знаю, почему это не для вас. – Mastro