Я использую Mercurial для большинства своих проектов, и когда я развертываю веб-сайт, я просто просто делаю hg clone
на рабочем сервере и hg pull -u
оттуда. То, что я хотел бы сделать, это добавить небольшой фрагмент к нижнему колонтитулу моего сайта, который отображает текущий номер версии (как десятичный, так и шестнадцатеричный), а также, возможно, текущую ветку. Stack Overflow и BitBucket делают то же самое, что и я.
Я кратко попытался разобрать вывод exec('hg summary')
, но я столкнулся с проблемами с правами доступа, прежде чем задаться вопросом, есть ли лучший способ сделать это. Есть ли лучший способ, или это мой лучший вариант?
Вы можете использовать крюк после обновления, чтобы помещать информацию в файл. На сайте .hg/hgrc
вы бы поставили что-то вроде этого:
[hooks] post-update = hg id --rev > VERSION ; hg id --id >> VERSION
то вы можете получить доступ к этому файлу из своего php. Вам все равно нужно убедиться, что пользователь, выполняющий hg pull -u
доверяет hgrc-файлу и что файл VERSION имеет разрешения, чтобы веб-сервер мог его прочитать.