Как создать страницы Github из документации проекта?

у меня есть проект на Github, который имеет каталог, содержащий некоторую автоматически сгенерированную HTML-документацию. Я хотел бы использовать эту документацию в рамках объекта project pages Github.

Итак, я прочитал инструкции о том, как создайте корневую ветвь проекта gh-pages. Это эффективно создает пустую ветвь.

что я хотел бы помочь с зеркальным отображением html-файлов в /docs путь от master ветвь, поэтому они находятся в корне из gh-pages филиала. Как лучше всего к этому подойти?

3 ответов


отвечая на мой собственный вопрос здесь... достигли того, что я хотел с подмодулями Git.

Я в основном скопировал то, что вся в угоду задач, но вкратце:

  • перенес docs путь в папку temp. Зафиксировать изменения.
  • создал чистый gh-pages филиала по обычные инструкции
  • переместил все из папки temp в новую gh-pages филиала. Совершать изменения.
  • назад в главную ветвь, добавьте remote gh-pages как подмодуль в .
  • сохранить изменения. Вуаля!

Mhm, я закончил писать эти две цели Makefile, чтобы подтолкнуть Мои документы. Я просто делаю update-doc, и он обычно работает.

TMP_PATH="/tmp/some_path"

## the dir containing HTML docs to push to gh-pages
HTML_DIR="html"

## arbitrary dirs created by the doc build system that should be removed
TRASH=latex

update-doc: doc
        rm -rf ${TMP_PATH} && cp ${HTML_DIR} ${TMP_PATH} -R && rm -rf ${HTML_DIR}
        git fetch
        git checkout gh-pages
        cp ${TMP_PATH}/* . -R
        rm -rf ${TRASH}
        git add .
        git commit -m "Update documentation"
        git push -u origin gh-pages
        rm -rf ${TMP_PATH}
        git checkout master

# command to build documentation; can be customised but
# remember to also change the HTML_DIR and TRASH variables
doc:
        doxygen docs/doxygen.conf

.PHONY: doc update-doc

Я использую doxygen но вы можете изменить это на любую другую систему документации.

предполагается gh-pages ветвь существует на удаленном и была создана, как объяснено здесь.


создайте символические ссылки для этих файлов в этом месте. Вы должны быть готовы тоже.