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 с командой.