Изменить имя автора в TortoiseSVN - PullRequest
3 голосов
/ 11 января 2010

У меня есть 3 компьютера WinXP, которые получают доступ к Subversion на основе сервера Linux. Я хотел бы изменить имя автора, отображаемое в журналах на нескольких компьютерах, потому что это «pc 3 разработки» и имя старого сотрудника. Как мне это сделать?

Ответы [ 3 ]

8 голосов
/ 11 января 2010

Попросите TSVN «показать журнал», в порядке изменения журнала все коммиты по автору, затем выберите все коммиты по автору интереса и используйте «Редактировать автора».

3 голосов
/ 13 января 2010

Скорее всего, вы пытались изменить имя автора, как предложил sharptooth, но затем вы, вероятно, получили сообщение об ошибке, в котором говорится, что вы не можете. Это требует неявного использования хука pre-revprop-change. По умолчанию этот хук всегда будет возвращать ошибку, если вы на самом деле не переопределите шаблон и не создадите реальный скрипт, способный вернуть нулевое значение. Из svn-book :

Хук pre-revprop-change запускается непосредственно перед изменением ревизии свойство, когда выполняется вне области обычного коммита. В отличие от других крючков, состояние по умолчанию этого - запретить предлагаемое действие. Крюк должен действительно существовать и вернуть нулевое значение выхода до того, как может произойти изменение свойства ревизии.

Вот копия моего pre-revprop-change хука, который позволяет мне редактировать сообщение журнала, но не автора:

REPOS="$1"
REV="$2"
USER="$3"
PROPNAME="$4"
ACTION="$5"

if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
# if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:author" ]; then exit 0; fi

echo "Changing revision properties other than svn:log and is prohibited" >&2
exit 1

Чтобы сменить автора в данной ревизии, вам нужно раскомментировать второй оператор if.

0 голосов
/ 11 января 2010

Вы бы изменили имя автора в хранилище, а не на отдельных клиентских компьютерах ...

Tortoise SVN имеет возможность редактирования автора в контекстном меню правой кнопки мыши в окне журнала.

...