обслуживать конкретную ветку git - PullRequest
0 голосов
/ 03 октября 2011

Я настраиваю среду QA для проекта, который состоит (на данный момент) из чисто статических файлов.Я хочу, чтобы QA могла тестировать определенные версии, которые мы помечаем как «готовые к тестированию».

Моя идея заключается в том, что я хочу иметь возможность обслуживать любую ветку git с сайта qa, возможно, через такие URI, как:

381dc1a.qa.somesite.com где 381dc1a ссылается на git uid.

Единственный известный мне способ сделать это - проксировать все файлы через git show, что немногопроблемы, учитывая очень и очень небольшую нагрузку на сайты контроля качества, но мне было интересно, есть ли у кого-нибудь идея получше.

Чего я хочу избежать, так это иметь 200 разных каталогов со своими собственными проверками.

1 Ответ

0 голосов
/ 03 октября 2011

Я бы предложил установить хук пост-получения, который использует git archive для архивирования каждой желаемой ревизии, как только она поступит, в каталог на вашем диске, а затем используйте обычный веб-сервер для обслуживания этих файлов.

Для несжатых каталогов:

git archive SOMEREF | tar -xC /path/to/folder/revision

Для тарболов:

git archive SOMEREF > /path/to/folder/revision.tar

Для zip-файлов:

git archive --format=zip SOMEREF > /path/to/folder/revision.zip

Поскольку вы сказали, что вам не нужна куча каталогов, хотя ...

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...