API Gerrit Hook - PullRequest
       3

API Gerrit Hook

2 голосов
/ 18 марта 2011

Я использую обзор кода Gerrit.

У меня проблема с ним.Есть несколько хуков с Gerrit, один из них:

patchset-created --change <change id> --change-url <change url>
--project <project name> --branch <branch> --uploader <uploader>
--commit <sha1> --patchset <patchset id> 

Gerrit вызовет его, если вы внесете какое-то изменение в Gerrit.но то, что я хочу, это журнал коммитов.Например, если я наберу git commit -m "id:110", я хочу получить id:110.

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

Ответы [ 2 ]

6 голосов
/ 17 декабря 2011

Вы можете использовать git log или git show, запускать из правильного хранилища.Ваш хук будет передан репо через --repository.Хук будет вызываться из полезного рабочего каталога (я только что зарегистрировался на прошлой неделе, я думаю, что он вставлен в репозиторий до запуска хука?)

git log $SHA1 или git show $SHA1 в зависимости от того, какую информацию выхочу.

Тем не менее, я бы предпочел лучшее решение.Я ищу, чтобы добавить diff / patchset к информации, и она не доступна ни через один из крючков gerrit.

0 голосов
/ 21 марта 2011

Я сам решил проблему. Кажется, у Геррита нет такого apis.но если вызывается хук, созданный в наборе исправлений, переданный им параметр изменения является полезным, если он ссылается на закрытый ключ таблицы базы данных gerrit с именем Change, при каждом нажатии git для его записи записывается такое изменение в таблицу Change, включая коммитсообщение, так что вы можете использовать параметр изменения для запроса таблицы, поэтому получил сообщение фиксации из ловушки!

...