Le parcours Git & GitHub de Web-Shine Docs explique Git en profondeur, depuis le tout premier commit jusqu'à la collaboration sur GitHub. Ce guide ne réexplique rien de tout ça : il applique ce que vous savez déjà à un cas précis, un thème Shopify, en insistant sur ce qui est spécifique à ce contexte.

Pourquoi Git, en plus de la sécurité déjà offerte par Shopify

Le guide précédent vous a montré comment publier un thème sans risque, grâce à --unpublished et à la possibilité de republier un ancien thème. Git ajoute une couche complémentaire, centrée non pas sur ce qui est visible par les clients, mais sur votre propre code source : un historique de chaque modification, la possibilité de travailler sur plusieurs idées en parallèle sans qu'elles se mélangent, et une sauvegarde de votre travail indépendante de Shopify lui-même.

Initialiser un dépôt dans le projet de thème

Dans le dossier atelier-lumiere-theme, initialisez un dépôt Git, exactement comme appris au guide 4 du parcours Git & GitHub :

Ce premier commit capture l'état du thème tel que généré par shopify theme init au guide 7, avant vos propres modifications. C'est un point de référence précieux, auquel vous pourrez toujours comparer votre travail plus tard.

Une branche par fonctionnalité

Avant de développer une nouvelle section, créez une branche dédiée, comme pratiqué dans le parcours Git & GitHub :

Développez et testez cette nouvelle section avec shopify theme dev, comme vu au guide 9, sur cette branche. Une fois satisfait, committez votre travail, puis revenez sur votre branche principale pour fusionner, exactement comme pour n'importe quel autre projet suivi par Git.

Lire un diff avant de committer

Avant chaque commit, relisez les modifications avec git diff. C'est particulièrement utile sur un fichier de section, qui mélange balisage HTML, logique Liquid, et bloc JSON de schema : un diff vous permet de vérifier que vous n'avez pas laissé de code de test oublié, ou modifié un schema par erreur en testant une valeur.

Un .gitignore pour un projet de thème

Comme vu en détail dans le parcours Git & GitHub, un fichier .gitignore évite de suivre des fichiers qui n'ont pas leur place dans l'historique du projet. Pour un thème Shopify, excluez notamment les dossiers de dépendances générés localement si votre configuration en utilise, et tout fichier de configuration personnel contenant des informations propres à votre machine, plutôt que propres au thème lui-même.

Publication contrôlée, en combinant Git et Shopify CLI

Un bon rythme de travail combine les deux outils : développez sur une branche Git dédiée, testez en local avec shopify theme dev, committez une fois satisfait, fusionnez sur votre branche principale, puis seulement alors publiez avec shopify theme push --unpublished suivi de theme publish, comme vu au guide précédent. Git protège votre code source ; les commandes de thème protègent ce qui est réellement visible par les visiteurs. Les deux se complètent, sans se remplacer.

Bon réflexe

Committez après chaque section ou block terminé et testé, pas seulement en fin de journée. Un historique de commits fréquents et clairs, un par fonctionnalité, rend un retour en arrière bien plus simple qu'un unique gros commit qui mélangerait plusieurs changements différents.

Vérifiez que vous avez compris

Vous avez publié un thème avec shopify theme publish, mais vous n'avez jamais committé vos modifications avec Git. Si votre ordinateur tombait en panne demain, votre travail serait-il perdu ?

Le thème publié sur Shopify resterait intact, puisqu'il a déjà été envoyé sur les serveurs de Shopify. En revanche, sans commit Git ni sauvegarde du dossier local, vous perdriez l'historique de vos modifications, votre capacité à revenir à une version intermédiaire précise, et tout travail en cours non encore publié. Git et la publication Shopify protègent deux choses différentes, pas la même.