2017-01-23 3 views
3

Итак, что я пытаюсь сделать: Добавьте URL, например (https://gerrit-server/#/c/7456/) в сообщение фиксации, появившееся на gerrit.Изменить сообщение о фиксации на gerrit после создания набора патчей?

Я пробовал до сих пор создать файл patchset-created под номером gerrit_site/hooks/, который запускается, когда я нажимаю изменение.

Проблема в том, что я не могу найти файл сообщения фиксации, поэтому я могу изменить его содержимое.

Я понял, что, поскольку я пытаюсь вставить URL-адрес в сообщение фиксации, я не могу этого сделать, используя крючок в моем локальном репозитории git, потому что нет способа узнать, на каком URL-адресе он будет связан gerrit, поэтому я подумал, что это можно сделать, используя крючок на стороне gerrit.

Поблагодарите любую обратную связь.

ответ

0

Хорошо, один из способов сделать это - изменить тип отправки проекта на выбор вишни и установить плагин reviewnotes для gerrit.

Выполнение этого автоматически изменяет сообщение Commit (после получения обзора кода + 2 и проверяется + 1), добавляя метки Review-Id, Reviewed-on (URL), пересмотренные и проверенные метки.

Не нужно использовать крючки.

0

Нет файла с сообщением о фиксации, на самом деле вам нужно внести поправки в первоначальную фиксацию (используя параметр «-commit» patchset-created), чтобы создать новый (patchset 2) с новым сообщением фиксации.

На мой взгляд, нецелесообразно вносить изменения в все толкаемые коммиты автоматически на сервере. Эта процедура создаст два патча для каждого изменения (1. первоначальное изменение 2. изменение с новым сообщением фиксации). Это может смутить пользователей особенно, когда им необходимо исправить их изменения.

Я не уверен, что я сам себя ясно ... пожалуйста, дайте мне знать.

Зачем вам нужна ссылка https://GERRIT-SERVER/#/c/xxxxx в сообщении о фиксации? Очень просто найти изменение, просто поместив идентификатор фиксации или change-id в поле поиска Gerrit ...

+0

Я не уверен, что я хочу, чтобы кто-то захотел получить URL-адрес в сообщении о фиксации, но мне это нужно. Я отредактировал сообщение, поэтому я оставляю комментарий коротко – Ezwig

+0

Во-первых: вы не должны ставить «комментарии» в область вопросов ... люди не поймут контекст вашего текста. Правильное место здесь. Отвечая на ваш вопрос: да, вы не можете изменить сообщение фиксации, не создавая новый комманд/патчсет, и вы не можете удалить оригинал, поэтому вы закончите с двумя коммитами/патчами (запутанными). Ключ change-id выполняется локально до создания фиксации. –

3

Вы можете модифицировать сообщение о фиксации непосредственно из пользовательского интерфейса gerrit. Просто откройте сообщение фиксации на gerrit и нажмите кнопку редактирования рядом с наборами патчей выше. Сделайте какие-либо изменения, а затем сохраните их. После этого вам нужно будет отправить новое сообщение о фиксации, появившись чуть выше раздела владельца на странице фиксации.

+1

Я действительно хотел бы написать сценарий, который автоматизирует это. – Ezwig

+0

Итак, как только я обновляю фиксацию через пользовательский интерфейс Gerrit, как мне изменить это изменение на моей локальной ветке? ('git pull' не работает, так как моя локальная ветвь отслеживает' master', и я использую 'git publish', чтобы нажать фиксацию на Gerrit.) –

+0

@SaketMehta,' git review -d 'должен помочь в таких случай, который я считаю. @caneru, я думаю, что это относится только к «новому пользовательскому интерфейсу». – kcpr

Смежные вопросы