2015-09-24 9 views
9

У меня есть несколько разработчиков, работающих с локальным экземпляром Gitlab. Клиент требует, чтобы их репозиторий Github обновлялся. Поэтому наше репо Gitlab должно подтолкнуть любые коммиты непосредственно к Github. Любые поручения Джитубу также должны быть втянуты в Гитлаб.Как синхронизировать gitlab с github

Я мог бы сделать первую часть (dev -> gitlab -> github) с дженкинсом или что-то в этом роде, но застрял на оборотной стороне. Наши Gitlab и Jenkins работают внутри нашего брандмауэра.

Любые подсказки или указатели (или растворы!) Были бы очень оценены.

+0

Не можете ли вы запустить процесс на dev-машине, которая подталкивает к github? –

ответ

0

Для синхронизации с GitHub для GitLab вы можете использовать Webhooks для отправки уведомлений на ваш сайт и, возможно, каким-то образом управлять этим (хотя я не знаю, поддерживает ли GitLab это из коробки).

И с немного большей реализацией вы могли (теоретически) использовать API GitHub.

Я также нашел small script с именем «простая (и грязная) синхронизация между проблемами redmine и проблемами gitlab», которые должны выполнять хотя бы это.

+0

Дополнительная информация о API: https://developer.github.com/ – rugk

4

Это только в издании предприятия и на GitLab.com, но GitLab внедрил эту функцию напрямую, без каких-либо обходных решений.

У них documented pulling from a remote repository.

Это в том же разделе конфигурации, вы можете нажать, тоже:

  1. В рамках проекта используйте значок шестеренки, чтобы выбрать Зеркало Repository
  2. Прокрутка вниз Пуш в удаленном хранилище
  3. Checkmark Удаленное зеркальное хранилище: Автоматически обновлять ветви, теги и собирать удаленные зеркала из этого хранилища каждый час.
  4. Введите репозиторий, который вы хотите обновить; для GitHub вы можете включить имя пользователя и пароль в URL, например, так: https://yourgithubusername:[email protected]/agaric/guts_discuss_resource.git

Обратите внимание, что я не пробовал это, но вы должны быть в состоянии нажать на и вытащить из того же хранилища. Он отлично работает для меня, вытаскивая из удаленного репозитория (drupal.org) и нажав на другой удаленный репозиторий (gitlab.com).

+1

Есть ли какие-либо решения для Gitlab-CE? – Martin

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