2014-12-03 3 views
1

У меня есть сценарий. У меня есть два экземпляра: экземпляр 1 для Gerrit и экземпляр 2 для Git. Я хочу понять, как git перехватит запросы, поступающие непосредственно к экземпляру 2?
Можно с уверенностью предположить, что мне нужно установить gerrit только удаленно, а не в экземпляр git.
Установите Gerrit и git на разные машины

При инициализации Геррит интерактивный экран кли просит места в хранилище мерзавец который должен быть локальным (?) Каталог, как/главная/Me/GIT-репо (в GIT-репо у меня есть проект .git). Что делать, если вместо локального репозитория я указываю URI удаленного репозитория, скажем, ssh: //[email protected]/root/project.git, в первую очередь, будет ли он работать? Если да, то как это действительно перехватывает все запросы push, pull ... ssh: //[email protected]/root/?

+0

Дубликат http://stackoverflow.com/questions/26760661/how-to-setup-gitolite-and-gerrit-on-separate-ubuntu-servers/26774084. –

+0

Спасибо за ссылку Магнус. Тем не менее, я хочу, чтобы gerrit «заботился» только о одном репозитории (из многих репозиториев) в удаленной папке. Один из способов - предоставить полные разрешения для всех других репозиториев (если мы это сделаем, каждый должен настроить git-review на своих компьютерах локально, чего мы не хотим). Мы хотим использовать только определенную группу людей (работающих в конкретном репозитории) для использования gerrit. Зачем беспокоить всех, когда все они не будут пользоваться услугами геррита. –

+0

Нет, вашим пользователям не нужно будет настраивать git-review. Функции обзора Gerrit являются дополнительными, и вы можете использовать его как универсальное программное обеспечение Git для хостинга, например, Gitolite. Никто не будет обеспокоен переключением на Геррит (кроме самой миграции). –

ответ

1

Это возможно. Сначала поймите, что gerrit будет выступать в качестве промежуточного рабочего места для вашего удаленного git. Это означает, что когда пользователь отправляет патч-набор, он сначала должен перейти в рабочую область Gritrit's git. Обычно $ GERRIT_HOME/git /. Теперь нужно включить репликацию, чтобы синхронизировать это репо с удаленным git-сервером, где они хотят отправить код в конце концов. Некоторые полезные ссылку на настройки репликации и настройки Git проектов можно найти здесь:

https://review.typo3.org/plugins/replication/Documentation/config.html

Importing already existing git repo with multiple branches and tags into gerrit

Sample replication.config, которые могут помочь вам:

[remote "github-remote-name"] 
    url = [email protected]<remote-git-server>/${name}.git 

Имейте в виду, что это $ {name} - это волшебное ключевое слово, которое необходимо сопоставить с репо, которое вы хотите синхронизировать. Чтобы синхронизировать выборочные репозиции многих, которые у вас есть, следуйте инструкциям в приведенной выше ссылке.

Надеюсь, это поможет.

+0

Спасибо за помощь. Тем не менее, я заметил, что вы упомянули ключевое слово $ {name}, чтобы помочь мне сохранить gerrit в синхронизации с любым «конкретным» репозиторием. У меня есть небольшое продолжение этого, есть ли способ добиться того же результата на местном уровне? Я хочу сказать, что я хочу применить gerrit-обзор только в определенном репозитории (скажем, product.git), а не в utilities.git, оба из которых могут присутствовать в одной папке. Один из способов - предоставить полные разрешения всем пользователям на utilities.git, это как обход правил для достижения результата. Есть ли прямой путь для этого? Заранее спасибо. –

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