Как заставить hgweb отображать репозитории в иерархии?
У меня есть около 100 хранилищ Mercurial, обслуживаемых hgweb
, Репозитории хранятся в иерархии папок, но hgweb
отображает структуру "плоско". Это не масштабируется. Есть ли способ отобразить хранилища в древовидной иерархии?
3 ответа
Мне нравится организовывать свои репозитории по типу, вот как выглядит мой конфиг 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.
Вы также можете быть заинтересованы в RhodeCode, который является более многофункциональным веб-интерфейсом для Mercurial.
Я не уверен, был ли это вариант во время вопроса, но теперь есть опция, которая позволяет спускаться в каталоги.
[web]
descend = True
Затем у вас есть два варианта настройки путей. Если вы укажете путь с одной звездочкой, он будет опускаться в подкаталоги, пока не найдет репозитории.
[paths]
/ = /var/hg/*
Если вы укажете путь с двумя звёздочками, он также спустится в репозитории, чтобы посмотреть, есть ли вложенные репозитории или вложенные репозитории.
[paths]
/ = /var/hg/**
Вы можете найти более подробную информацию о Mercurial вики на PublishingRepositories.
(Звучит так, как будто вы также хотите, чтобы иерархия отображалась в виде дерева. Это решение влияет только на то, какие репозитории будут обнаружены. Оно не изменит способ их отображения. Я не знаю каких-либо встроенных таким образом, чтобы выполнить иерархическое отображение.)
У меня была та же проблема, и я решил, включив collapse
опция:
[web]
collapse = yes