Как я могу переписать историю в Mercurial, чтобы изменить имя автора?
У меня есть ртутный (hg) репозиторий кода Google, который выглядит следующим образом.
Я пытаюсь отредактировать имя автора (в данном случае "Питер Эндрюс") из-за опечатки. Хранилище заброшено, и больше не будет коммитов, кроме как попытаться изменить имя.
Как я мог сделать что-то подобное?
Благодарю.
PS. Я использую MercurialEclipse
1 ответ
Единственно возможный способ, о котором я знаю, - это преобразовать ваш репозиторий в новый репозиторий Mercurial, используя расширение Convert Mercurial с --authors
вариант.
Во время преобразования вы можете изменить имена авторов, предоставив текстовый файл с "сопоставлением".
Цитата из второй ссылки:
Преобразование может также переназначить имена авторов во время преобразования, если
--authors
опция предоставляется. Аргумент должен представлять собой простой текстовый файл, отображающий каждого исходного коммит-автора на конечного коммит-автора. Это удобно для исходных SCM, которые используют учетные записи UNIX для идентификации авторов (например, CVS). Пример:john=John Smith <John.Smith@someplace.net> tom=Tom Johnson <Tom.Johnson@bigcity.com>
Даунсайд:
Вам нужно будет удалить репозиторий в Google Code и заменить его на конвертированный, что означает, что каждый, кто клонировал старый репозиторий, должен будет удалить свои локальные копии и выполнить повторную загрузку.
Удаление и замена репо на сервере может показаться немного неуклюжим, но AFAIK нет другого способа изменить имена авторов впоследствии.