Вопрос

Я просто начинаю использовать Github, Gerrit и Hudson (Jenkins) вместе. И мне нужны мысли на рабочий процесс.

Мы хотели бы использовать GitHub в качестве основного удаленного репо. Мы хотели бы использовать Gerrit в первую очередь для отзывов кода, но и для построения триггеров в Гудзоне.

На данный момент, однако, у меня возникнут проблемы с размышлениями через рабочий процесс для этого и хотелось бы услышать, что сделали другие. Мысли?

Это было полезно?

Решение

Я не использовал напрямую не использовал Gerrit, но мне нравится идея промежуточного и специализированного репо, между:

  • REPOS вашего разработчика
  • Центральный GitHub удаленный репо

Таким образом, вам нужно определить, что вы хотите опубликовать в REPO Remote GitHub:

  • Код для рассмотрения (означает, что локальный веб-пантер Gerrit будет потянуть код GitHub для изучения)
  • Код, который был рассмотрен (означает, что вы публикуете сначала свои комбиниты для Gerrit, а после обзора кода вы толкаете их в GitHub)

Второй рабочий процесс ближе к тому, что Проекты Google Android следует с Gerrit.

В обоих случаях требуется промежуточный местный репо для Gerrit для изучения.

Другие советы

Мы используем гадость, Геррит а также jenkins. (преемник Гудсон). Мы связываем его вместе с редмин для bugtracking.

Перед Gerrit мы использовали GitHub, поскольку основной репозиторий и разработчики разработчиков приняли участие в доступе. Теперь, когда у нас работает Gerrit, Github используется только в качестве нашего хранилища публикации, и только пользователь Gerrit имеет доступ к точке на Github.

Рабочий процесс:

  1. Разработчик проверяет источник из GitHub.
  2. Разработчик вносит изменения.
  3. Разработчик толкает в Gerrit.
  4. Gerrit отправляет уведомление об изменении Jenkins для теста интеграции.
    • Дженкинс вытягивает изменения прямо из сервера Gitrit Git.
    • По перевалу, Дженкинс добавляет +1 до обзора Gerrit, проходит обзор другим разработчикам.
    • По провалу, Дженкинс добавляет -1 в обзор Gerrit
    • Статус Pass / Fail толкнул в Redmine
  5. Другие разработчики обзорные изменения, утверждают (+2)
  6. Gerrit совершает изменения в репозиторий GitHUB.
    • Крюк GitHub уведомляет Redmine обновлений.
    • Redmine вытягивает изменения из GitHub, анализирует обмена сообщениями для информации о билетах.
  7. Разработчик извлекает изменения из GitHub ... Вернуться к 2. [править]: Мы переключили, чтобы потянуть непосредственно из Gerrit. GitHub остается в качестве зеркала для вытягивания источников производства.

Отсутствующие части:

  1. кусок к завязке Обзор Gerrit в / от отслеживания ошибок.
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top