Chaire de recherche du Canada sur les écritures numériques, Bibliothèque des lettres et des sciences humaines, Ouvroir d'histoire de l'art et de muséologie numérique. — roch.delannay@umontreal.ca ; giulia.ferretti@umontreal.ca ; louis-olivier.brassard@umontreal.ca
À l’heure actuelle, GitHub est la plateforme la plus ubiquitaire pour le partage et la mise en ligne de code informatique. C’est un peu comme un réseau social pour les développeurs, dont la base d’utilisateurs s’étend aujourd’hui bien au-delà des geeks. La plateforme est propriété de Microsoft, qui en a fait l’acquisition en 2018. Sachez qu’il existe d’autres services similaires, et que le fonctionnement y est à peu près identique. Ce que vous apprendrez dans cet atelier s’appliquera aisément ailleurs.
Lorsque vous êtes connecté·e à GitHub, cliquez sur le petit +
dans la barre supérieure. Cliquez sur « New repository » (interface disponible en anglais actuellement).
Donnez un nom à votre dépôt. GitHub demande d’utiliser des caractères alphanumériques, sans espaces, avec l’option d’utiliser des traits d’union. Vous pouvez aussi ajouter une brève description.
Vous pouvez choisir de rendre votre dépôt « public » ou « privé » (visible uniquement pour vous). Cependant, le statut « public » doit être utilisé pour héberger votre site gratuitement sur GitHub pages. Vous pourrez donc garder vos fichiers privés jusqu’au moment de publier.
Laissez les autres champs vides.
Sur la page de votre dépôt vide, plusieurs options s’offrent à vous : téléverser des fichiers, synchroniser un dépôt Git existant (sur votre ordinateur par exemple) ou encore importer à partir d’une source publique.
Si vous êtes à l’aise avec Git, l’option de la synchronisation est assurément la meilleure; sinon, téléversez vos propres fichiers, nous reviendrons à Git plus tard.
Commencez par initialiser Git pour le répertoire courant, si ce n’est pas déjà fait (dans le dossier du projet sur votre ordinateur) :
git init
Créez un commit, si ce n’est pas déjà fait :
git commit -m 'Commit initial'
Ensuite, liez l’adresse du dépôt sur GitHub (choisissez HTTPS si vous n’avez jamais utilisé SSH), qui sera appelée origin
par convention :
git remote add origin https://remplacez-moi-par-votre-url
Enfin, poussez vos modifications! (l’option -u
doit être utilisé seulement la première fois)
git push -u origin --all
Observez la réponse dans votre terminal. Si aucune erreur ne s’est produite, vous devriez avoir synchronisé vos fichiers sur la plateforme GitHub, félicitations!
Lorsque vous êtes connecté·e à votre compte GitHub, naviguez à la page du dépôt de cet atelier. Dans le coin supérieur droit, cliquez sur le bouton « Fork » pour créer une divergence. L’historique du dépôt existant sera synchronisé avec votre copie personnelle.
Prenez un moment pour synchroniser votre répertoire local et votre dépôt hébergé par GitHub. Utilisez la puissance de Git pour versionner vos fichiers. (Référez-vous à la séance sur Git pour un aide-mémoire!)
N’oubliez pas de regénérer vos fichiers de sortie HTML avec Pandoc lorsque vous avez modifié vos fichiers source (par exemple index.md
, reglages.yml
), puis de les « commit
ter ».
Vous devez ajouter un fichier de configuration. Il y a deux manières de le faire :
Lorsque vos fichiers sont prêts à être publiés, rendez-vous sur la page Réglages (settings) de votre dépôt GitHub. Dans la barre latérale, cliquez sur Pages.
Choisissez alors GitHub Actions comme source de déploiement (cette option offre beaucoup plus de souplesse). GitHub vous suggérera peut-être l’action Static HTML : cliquez sur le bouton Configure. Sinon, retrouvez-la en cliquant sur « Browser all workflows ».
Vous aurez alors un fichier de configuration pré-rempli : assurez-vous simplement que la propriété path
de l’étape du téléversement corresponde à votre projet (utilisez un point .
pour publier le dépôt à partir de la racine, ou un sous-répertoire, comme site
, si votre site ne se trouve pas à la racine).
- name: Upload artifact
uses: actions/upload-pages-artifact@v1
with:
# Upload entire repository
path: '.'
Pour confirmer vos modifications, créez un commit avec le bouton Commit changes… et résumez vos changements dans la boîte de texte prévue à cet effet.
Pour déployer avec GitHub, vous devrez créer un répertoire et un sous-répertoire à la racine de votre dépôt : .github/workflows
(où le répertoire workflows
se situe à l’intérieur du répertoire .github
). Notez que votre explorateur de fichiers peut masquer les fichiers et dossiers débutant par un point : cela peut être changé dans les réglages de votre système d’exploitation. Depuis le terminal, vous y arriverez sans problème. Git ne synchronise pas les répertoires vides , mais uniquement ceux contenant des fichiers.
Depuis la racine du répertoire du projet sur votre ordinateur, créez deux sous-dossiers simultanément (mkdir
avec l’option -p
) :
mkdir -p .github/workflows
Créez à présent un fichier mon-site.yml
dans ce sous-répertoire. Vous pouvez lui donner le nom que vous voulez, cela n’a pas d’importance, mais vous devez utiliser l’extension .yml
:
touch .github/workflows/mon-site.yml
Ouvrez ce fichier pour édition et remplissez-le avec l’exemple fourni dans le dépôt de l’atelier.
Committez vos changements (git commit -m '...'
) et poussez-les vers le dépôt en ligne (git push
).
Rendez-vous maintenant à la page Actions de votre dépôt sur GitHub. À la suite de votre push
, GitHub devrait avoir lancé les actions spécifiées dans votre fichier de configuration. Si tout s’est bien passé, vous verrez un crochet vert signifiant que les opérations se sont conclues avec succès!
Cliquez sur le détail de l’action. Vous pourrez alors consulter l’adresse de déploiement de votre site.
.gitignore
. Exemple avec le générateur de site statique Hugo.