#mercurial #hgweb
#mercurial #hgweb
Вопрос:
У меня есть около 100 репозиториев Mercurial, обслуживаемых hgweb
. Репозитории хранятся в иерархии папок, но hgweb
отображают структуру «плоским» образом. Это не масштабируется. Есть ли способ отображать репозитории в виде древовидной иерархии вместо этого?
Ответ №1:
Мне нравится организовывать свои репозитории по типу, вот как выглядит моя конфигурация hgweb:
[web]
baseurl =
[paths]
/apps = /var/hg/apps/*
/config = /var/hg/config/*
/design = /var/hg/design/*
/music = /var/hg/music/*
/projects = /var/hg/projects/*
/scripts = /var/hg/scripts/*
Вы также можете использовать **, чтобы заставить его отображать каталоги рекурсивно.
[paths]
/ = /var/hg/**
Ознакомьтесь с документами для получения других деталей / опций:http://www.selenic.com/mercurial/hgrc.5.html#web.
Вас также может заинтересовать RhodeCode, который является более многофункциональным веб-интерфейсом для mercurial.
Комментарии:
1. В последней бета-версии RhodeCode есть группа репозиториев, поэтому она идеально подходит для управления большим количеством репозиториев
2. Я думал, что * позволяет отображать рекурсивные каталоги и ** позволяет отображать вложенные репозитории?
Ответ №2:
Я не уверен, была ли такая опция на момент вопроса, но теперь есть опция, которая позволяет переходить в каталоги.
[web]
descend = True
Затем у вас есть два варианта настройки ваших путей. Если вы укажете путь с одной звездочкой, он будет переходить в подкаталоги, пока не найдет репозитории.
[paths]
/ = /var/hg/*
Если вы укажете путь с двумя звездочками, он также перейдет к репозиториям, чтобы увидеть, есть ли вложенные репозитории или подрепозитарии.
[paths]
/ = /var/hg/**
Вы можете найти более подробную информацию в Mercurial wiki по адресу PublishingRepositories.
(Звучит так, как будто вы, возможно, также хотите, чтобы иерархия отображалась в виде дерева. Это решение влияет только на то, какие репозитории будут обнаружены. Это не изменит способ их отображения. Я не знаю ни о каком встроенном способе достижения иерархического отображения.)
Ответ №3:
У меня была такая же проблема, и я решил ее, включив collapse
опцию:
[web]
collapse = yes