2011-02-08 2 views
9

мы работаем с mercurial, и теперь мы хотели бы представить precommit hooks, чтобы код оставался чистым. Мы хотели бы, чтобы все как-то зацепили крючки, но мы также хотели бы иметь возможность обновить это централизованно. Mercurial не контролирует контроль версий, так что будет нашим альтернативным вариантом? Вы нашли решение для этого? Спасибо заранее!Как я могу поделиться фиксацией в mercurial со всеми разработчиками?

Nemmi

+0

Дубликат http://stackoverflow.com/questions/7462154/how-do-i-set-up-a-hook-in-hg-mercurial-that-gets-dictated-by- -хранилище. –

ответ

10

Крючки не клонируются (как описано в «Version-controlled extension configuration in Mercurial»), но вы можете иметь общий hgrc файл (см hgrc Syntax):

Строка вида %include file будет включать в себя файл в текущий файл конфигурации

В этом центральном файле конфигурации вы можете изменить раздел [hooks].

+0

Uhm, но как общий файловый оператор% include? Как бы настройки в отдельном файле отличались от копирования/вставки его содержимого в hgrc? – BradLaney

+0

@BradLaney 6 лет спустя, я немного неясен в деталях, но явное преимущество наличия включенного файла в отличие от скопированного содержимого - это то, что включает в себя файл (указывающий на общий общий файл), вы сразу получаете выгоду от указанных изменений. – VonC

2

Если у вас есть контроль над своими рабочими столами (это стандартная корпоративная установка) вы можете положить крюк в общесистемных записей /etc/mercurial/hgrc или /etc/mercurial/hgrc.d/ourcommithook

Если вы удаленное администрирование машины можно автоматизировать с помощью что-то как очень отличный puppet, или создав свой собственный .rpm, .deb или .msi installer, который установил Mercurial и помещает все крючки в конфигурацию machine-global.

0

Посмотрите на projrc extension. Затем вам просто нужно, чтобы дизайнеры помещали небольшое количество общих строк в свои файлы ~/.hgrc, и они автоматически будут толкать все, что вы помещаете в файл repo/.hg/projrc централизованного репо.

Вам по-прежнему нужно обычное место для размещения этих крючков, но у вас, вероятно, уже есть какой-то общий подключенный диск, который все пользователи монтируют, не так ли? Или у вас может быть репозиторий «инструментов», который каждый должен проверить в стандартном расположении.

Стив

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