Comment créer des pages Github de la documentation d'un projet?
-
27-10-2019 - |
Question
J'ai un projet sur Github qui a un répertoire contenant une documentation HTML généré automatiquement. Je voudrais utiliser cette documentation au sein de l'installation des pages du projet de Github.
Alors, j'ai lu les instructions sur la façon de créer gh-pages branche racine du projet. Cela crée effectivement une branche vide.
Ce que je voudrais aide est mise en miroir des fichiers html dans le chemin de /docs
de la branche master
, de sorte qu'ils sont à la racine de la branche gh-pages
. Quelle est la meilleure façon d'aborder ce sujet?
La solution
Répondre à ma propre question ici ... ont accompli ce que je voulais avec Git sous-modules.
Je essentiellement copié ce qui est détaillées dans cette tâche de bien , mais en résumé:
- Déplacé le chemin de
docs
dans un dossier temporaire. Valider les modifications. - Création d'une branche
gh-pages
propre selon les instructions habituelles - Déplacés tout à partir du dossier temporaire dans la nouvelle branche
gh-pages
. Valider les modifications. - Retour dans la branche principale, ajoutez la
gh-pages
à distance en tant que sous-module dans le dossierdocs
. - Valider les modifications. Le tour est joué!
Autres conseils
Hmm, je fini par écrire ces deux cibles Makefile pour pousser mes docs. Je fais juste faire la mise à jour-doc et il fonctionne en général.
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
J'utilise doxygen
mais vous pouvez changer cela à tout autre système de documentation.
Cela suppose la branche gh-pages
existe sur la télécommande et a été créé comme expliqué ici .
créer des liens symboliques pour ces fichiers à cet endroit. Vous devriez être en mesure de commettre ces trop.