¿Cómo crear páginas GitHub a partir de la documentación de un proyecto?
-
27-10-2019 - |
Pregunta
Tengo un proyecto en GitHub que tiene un directorio que contiene una documentación HTML generada automáticamente. Me gustaría usar esa documentación dentro de la instalación de Páginas de Proyectos de GitHub.
Entonces, he leído las instrucciones sobre cómo crear la rama de raíz de las páginas GH de GH del proyecto. Esto efectivamente crea una rama vacía.
Con lo que me gustaría ayudar es reflejar los archivos HTML en el /docs
camino desde el master
rama, por lo que están en la raíz del gh-pages
rama. ¿Cuál es la mejor manera de abordar esto?
Solución
Respondiendo a mi propia pregunta aquí ... he logrado lo que quería con los submódulos Git.
Básicamente copié lo que detallado en esta tarea de bien, pero en resumen:
- Movió el
docs
ruta en una carpeta temp. Cometer cambios. - Creó un limpio
gh-pages
rama según el Instrucciones habituales - Movió todo de la carpeta temperatura al nuevo
gh-pages
rama. Cometer cambios. - De vuelta en la rama maestra, agregue el control remoto
gh-pages
como un submódulo en eldocs
carpeta. - Cometer cambios. ¡Voila!
Otros consejos
MHM, terminé escribiendo estos dos objetivos de Makefile para empujar mis documentos. Simplemente hago doc de actualización y generalmente funciona.
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
yo suelo doxygen
Pero podría cambiar esto a cualquier otro sistema de documentación.
Esto supone el gh-pages
Branch existe en el control remoto y fue creado como se explicó aquí.
Cree enlaces simbólicos para esos archivos a ese lugar. Deberías poder cometerlos también.