Doxygen для проекта, управляемого с помощью git?
Я работаю над iPhone C++ и Objective C Project. Я использую Git в качестве моей системы контроля версий.
Кодовая база немного выросла, поэтому я хотел бы добавить в проект doxygen. Проблема в том, что я не уверен, что будет лучшим подходом для этого.
Я думал о нескольких вариантах:
1) Создайте HTML-документацию doxygen в папке проекта и сделайте ее "частью" проекта, чтобы она также была версионной и поддерживала git.
2) Создайте HTML-документацию doxygen в папке проекта и добавьте ее в .gitignore
чтобы каждый пользователь проекта отвечал за создание документов, а хранилище git проекта оставалось нетронутым (за исключением .gitignore
).
Мы используем git --bare репозиторий на нашем главном сервере, поэтому смонтировать веб-страницу, содержащую doxygen в HTML, на сервере будет сложно (вы не можете увидеть файлы проекта с репозиторием git --bare, поэтому я выиграл не смогу увидеть сгенерированный Doxygen HTML документ, если я не загрузил его отдельно)
Может быть, я мог бы сделать какую cron-job
, чтобы обновлять doxygen на стороне сервера?
Помощь очень приветствуется.
Ответы
Ответ 1
Я считаю, что никогда не следует хранить сгенерированные файлы в исходном репозитории, особенно когда они генерируются общедоступными инструментами, такими как Doxygen, из файлов, которые уже хранятся в репозитории. В случае с Doxygen вам нужно хранить Doxyfile
в репо.
(Или, лучше, если вы используете autoconf, сохраните Doxyfile.in
, чтобы заменить текущий номер версии проекта в сгенерированный Doxyfile
как часть шага configure
.)
Если вы хотите, чтобы все, кто проверяет ваш проект, получили копию справочного руководства, созданного Doxygen, сделайте его частью процесса сборки по умолчанию.
Ответ 2
Я согласен с Уорреном, но я бы добавил следующее:
Вы можете использовать '' post-receive hook '', чтобы автоматически обновлять (отдельный) рабочий каталог каждый раз, когда нажимаете на голый репозиторий. Этот подход описан для поддержки веб-сайтов, контролируемых версиями, здесь http://toroid.org/ams/git-website-howto, и я использую его таким образом.
Мне кажется разумным, что вы можете добавить шаг к крюку для запуска Doxygen после обновления, что было бы о том, что вы ищете. Возможно, вам придется подумать о том, как сообщать об ошибках пользователю/коммиттеру, если Doxygen borks, но это единственная проблема, которую я вижу.
Ответ 3
Проверьте только конфигурационный файл doxygen,
получите непрерывную интеграцию, чтобы создать документацию и опубликовать ее на внутреннем веб-сайте и разделить URL с командой.