Le parfait workflow de développement de WordPress avec Git & SSH

Matthias Held Dernière mise à jour le 21.10.2020
9 Min.
Workflow-DEV
Dernière mise à jour le 21.10.2020

Vous vous êtes peut-être demandé : "Comment publier mon site WordPress ?" ou "Quelle est la meilleure façon de mettre mon site WordPress en ligne ? En tant que développeur en herbe - ou agence cherchant à améliorer ses performances - je suis sûr que vous seriez horrifié par le flot de résultats de recherche (obsolètes) sur Stack Overflow et Google. Dans cet article, je vais donc vous présenter un processus de déploiement éprouvé pour faire passer votre site WordPress d'un appareil local à un serveur. Allons-y pour les SSH ! 

Qu'est-ce que les sciences humaines ?

SSH (abréviation de "Secure Shell") est une méthode de connexion à un système ou un serveur utilisant l'interface de ligne de commande (CLI). En d'autres termes, avec les sciences humaines, vous ne perdez pas de temps à passer d'une interface utilisateur à l'autre pour transférer vos données. 

Pourquoi les sciences humaines sont-elles si cool ?

Une fois que vous avez configuré SSH, vous n'avez plus besoin de glisser-déposer des fichiers. Cela permet de réduire le nombre d'erreurs et d'accélérer les délais de déploiement.

À qui les sciences humaines conviennent-elles ?

Les sciences humaines peuvent être utilisées par des équipes de développement de tout niveau et de toute taille. SSH est un moyen très sûr et rapide de modifier votre projet et de publier les modifications. Surtout si vous travaillez sur des projets de grande envergure, vous rendrez votre flux de travail beaucoup plus efficace avec les sciences humaines.

Par exemple, avec Git, vous pouvez mettre tout votre travail dans un seul dépôt et le pousser vers votre serveur, ainsi que travailler en collaboration sur un projet en équipe - sans avoir à déplacer les fichiers entre eux.

Pourquoi utiliser les sciences humaines ? 

La raison pour laquelle les sciences humaines sont utilisées diffère selon le cas d'utilisation. Les sciences humaines sont principalement utilisées pour ces raisons :

  • Les SSH sont en sécurité,
  • rapide et
  • peut être automatisé !

Et comme si ce n'était pas une raison suffisante pour vous, vous pouvez aussi coupler les sciences humaines avec le contrôle de version de Git. Si vous avez besoin de revenir en arrière en raison d'un bogue ou d'une fonctionnalité cassée, c'est très facile aussi : un retour en arrière se fait directement à partir de votre dépôt GitHub.

Utiliser les sciences humaines comme développeur junior ? 

Quiconque aborde le sujet des sciences humaines peut rapidement se sentir dépassé, car à première vue, le système semble extrêmement complexe. Mais ne vous inquiétez pas : ce tutoriel vous guidera à travers toutes les étapes importantes. Comme vous le savez peut-être, l'expérience pratique en matière de développement avec Git et SSH est très précieuse - et constitue aujourd'hui une norme industrielle.

Pourquoi une agence utiliserait-elle les sciences humaines ?

Outre les avantages susmentionnés en termes de gain de temps et de contrôle des versions, SSH vous permet de vous connecter à votre serveur en toute sécurité à partir de n'importe quel appareil sur lequel votre clé SSH est installée. 

Ne pas être lié à un dispositif spécifique signifie la liberté de localisation. 

Premiers pas avec les sciences humaines

RAIDBOXES vous propose un plan d'hébergement pour le développement gratuit de vos projets WordPress : le FREE Dev Program. Donc si vous voulez pratiquer les sciences humaines, vous êtes sur la bonne voie.

Votre RAIDBOXES BOX est l'endroit où vous hébergerez votre site WordPress . Cependant, vous ne pourrez pas pousser vos engagements directement. Il s'agit d'une fonction de sécurité de RAIDBOXES qui garantit que votre BOX reste sécurisé. Vous devrez plutôt faire appel à un fournisseur tiers pour faire valoir votre pension auprès de git pull dans votre BOX . J'ai utilisé GitHub pour ce tutoriel. Bien entendu, vous pouvez également utiliser un autre service - le processus est assez similaire.

J'ai visualisé une fois pour vous comment le processus fonctionne exactement : 

wordpress-development

Si vous avez déjà ... 

  • Git installé sur votre appareil,
  • Les clés SSH générées et 
  • a ajouté votre clé publique SSH à GitHub, 

puis passez directement à l'étape 4 : Configurez votre clé SSH sur RAIDBOXES .

Étape 1 : Vérifiez si vous avez installé Git

Vous pouvez facilement vérifier si Git est installé sur l'appareil que vous utilisez : Ouvrez votre outil de ligne de commande (Windows) ou votre terminal (Mac) et entrez la commande suivante : 

ssh-13

git version

Si vous voyez un numéro de version, Git est installé sur votre appareil. 

ssh-7

Si vous obtenez un message d'erreur, vous pouvez installer Git ici. (Vous devrez peut-être mettre à jour Git si vous utilisez une ancienne version).

Étape 2 : Configurez vos clés SSH

Vérifiez s'il existe des clés SSH :

Les clés SSH sont nécessaires pour se connecter de manière sécurisée à GitHub et RAIDBOXES via une connexion SSH. Si vous n'êtes pas sûr d'avoir déjà généré des clés SSH, vous pouvez généralement les trouver de cette façon :

  1. Ouvrez le Git Bash
  2. Entrez la commande suivante

ls -al ~/.ssh

Si vous avez des clés SSH, vous obtiendrez une sortie avec les noms correspondants : 

ssh-6

Les clés SSH se trouvent généralement dans le répertoire racine des appareils de vos utilisateurs. Consultez le répertoire :

C:\Users\<YOUR USER NAME>\.ssh

Pour plus de détails sur les clés SSH, consultez les documents officiels de GitHub.

Générer de nouvelles clés SSH :  

Il existe plusieurs façons de créer des clés SSH. Je vous recommande de suivre la documentation sur GitHub Docs - il y a des instructions pour Windows, Mac et Linux.

Étape 3 : Ajoutez votre clé SSH à GitHub

Comme condition préalable pour pousser votre développement local vers GitHub, vous devez ajouter votre clé SSH à GitHub. Pour ce faire, suivez la documentation officielle de GitHub

Vous pouvez vérifier si vous avez correctement configuré la clé SSH en : 

Étape 4 : Installez votre clé SSH dans RAIDBOXES

RAIDBOXES vous permet de vous connecter à votre serveur via une connexion SSH. Vous devez d'abord enregistrer la clé SSH dans l'interface utilisateur graphique (GUI). 

Pour ce faire, connectez-vous au tableau de bord RAIDBOXES. Sélectionnez le site BOX auquel vous souhaitez vous connecter via SSH :

ssh-5

Allez dans Paramètres > SSH :

ssh-8

Activez SSH en cliquant sur le bouton "Off" pour l'activer et sélectionnez les paramètres SSH :

ssh-15

Préparez votre clé SSH (voir étape 2). RAIDBOXES vous demande de saisir votre clé publique SSH. 

Allez dans le répertoire de votre machine locale qui contient vos clés SSH :

C:\Users\Admin\.ssh

Ouvrir le dossier id_rsa.pub. Copiez tout le contenu du fichier - y compris le "ssh-rsa" au début - et collez-le dans le champ SSH : 

ssh-10

Cliquez sur "Save" et revenez à votre tableau de bord BOX . 

Dans la section SSH, vous trouverez vos références pour vous connecter à RAIDBOXES via SSH. Vous avez besoin des données d'accès suivantes : 

  • Nom d'utilisateur, 
  • Coordonnées de l'hôte et 
  • La phrase de passe SSH que vous avez créée pour votre clé SSH (voir étape 2). 
Le parfait workflow de développement de WordPress  avec Git &amp; SSH

Ouvrez Git Bash (Windows) ou Terminal (Mac). La commande pour se connecter via SSH est :

ssh <user-name>@<host-details>

Un exemple avec mon compte fictif serait : 

ssh wp@XXXXXX.myraidbox.de

ssh-1

Vous serez alors invité à saisir votre phrase de passe SSH. Saisissez-le - et bienvenue dans votre arborescence de fichiers RAIDBOXES BOX ! 

Si vous recevez un message d'avertissement indiquant que la connexion est inconnue (il s'agit de la première connexion), vous pouvez procéder comme suit :

  • Entrez oui,
  • quitter Git Bash,
  • ouvrir à nouveau Git Bash et
  • entrez à nouveau les détails de votre conflit SSH. 
ssh-2

Étape 5 : La structure du répertoire RAIDBOXES

Comme indiqué dans l'écran d'accueil de la connexion SSH à votre RAIDBOXES BOX , votre répertoire WordPress préinstallé se trouve dans /home/wp/disk/wordpress. Votre répertoire de travail actuel lorsque vous vous connectez pour la première fois via SSH est home/wp

Dans ce répertoire, vous n'avez pas les autorisations appropriées pour lancer Git et mener votre projet avec git pull le téléchargement - vous ne le voudriez pas non plus. 

Passez à votre dossier de travail : 

À partir de ce répertoire, vous pouvez modifier les bases de votre site WordPress : Si vous ls (liste) dans la console, vous verrez votre arborescence de fichiers WordPress typique : 

ssh-9

Étape 6 : Initialiser Git sur RAIDBOXES

Modifier les annuaires dans wp-content/themes et créer un répertoire. Ici, vous initialisez Git et retirez votre Theme développé localement de GitHub. 

cd wp-content/themes

mkdir <your theme name>

cd <your theme name>

git init

Autre fonctionnalité intéressante de RAIDBOXES: Git est déjà installé sur le serveur - ainsi que WordPress CLI (WP-CLI). La dernière chose à faire est de placer votre dépôt GitHub dans l'arborescence de fichiers RAIDBOXES WordPress . 

Toutefois, pour assurer la sécurité de votre BOX , RAIDBOXES ne vous y autorise pas, git push directement de votre appareil local à votre guichet automatique. Au lieu de cela, vous le tirez d'un service comme GitHub. 

(Si vous avez déjà poussé votre projet de développement local à GitHub, veuillez passer à l'étape 8).

Étape 7 : Téléchargez votre Theme local sur GitHub

Depuis votre appareil local, naviguez jusqu'au dossier où votre WordPress -Theme personnalisé a été créé. Ensuite, initialisez Git en l'exécutant dans votre terminal :

git init

ssh-11

Créez votre repo sur GitHub et ajoutez-le en tant que remote à votre développement personnalisé. Pour obtenir des instructions sur la création d'un dépôt GitHub, veuillez lire cette documentation.

ssh-14

Lorsque vous créez une mise en pension, vous pouvez choisir entre le public et le privé. Pour les travaux de commande, il est préférable de choisir le privé. Notez que vous serez invité à ajouter votre nom d'utilisateur et votre mot de passe GitHub (et non votre phrase de passe SSH) lorsque vous utiliserez les commandes git push ou git pull que vous voudrez retirer.

Ajoutez votre repo GitHub en tant que télécommande pour exécuter la commande git push à utiliser : 

git remote add <the alias you choose for the remote> <the remotes address>

Comme dans cet exemple : 

git remote add gitHub
https://github.com/XXXXXXXXX/customWordpressTheme.git

Ajoutez vos fichiers, validez-les et poussez-les vers votre dépôt à distance : 

git add *
git commit -m '<your commit note>'
git push -u <the alias you gave your remote> <the name of the branch your working on>

(Si vous n'êtes pas sûr du nom de votre télécommande, lancez la commande git remote -v éteint. Vous y trouverez tous les noms des dépôts à distance).

$ git push -u gitHub master

Génial ! Votre Theme est maintenant en ligne et prêt à être intégré dans votre BOX . 

Étape 8 : Téléchargez votre Theme dans RAIDBOXES

Tout comme vous ajoutez votre dépôt GitHub en tant que dépôt distant (vous pouvez donc pousser votre Theme vers GitHub), nous allons maintenant ajouter GitHub en tant que dépôt distant et pousser le Theme du dépôt GitHub. 

Ouvrez le terminal Git Bash où vous avez fait votre SSH à RAIDBOXES . Vérifiez que vous êtes bien dans le répertoire de votre dossier WordPress -Theme où vous avez initialisé Git (voir étape 6). 

Par exemple :

home/wp/disk/wordpress/wp-content/themes

Maintenant, ajoutez votre repo GitHub comme une télécommande. 

Vous pouvez trouver l'adresse à distance dans GitHub : 

ssh-3

Ajoutez la télécommande : 

git remote add <choose an alias name> <the address of your github ssh repo>

git remote add gitHub https://github.com/XXXXXX/customWordpressTheme.git

Retirez maintenant le repo de GitHub :

Veuillez noter : Branch est très probablement appelé maître ici. Sauf si vous l'avez modifié ou si vous travaillez dans une autre branche de GitHub.

git pull <alias name> <branch>

git pull gitHub master

Si le dépôt est privé ...

... il vous sera demandé votre nom d'utilisateur et votre mot de passe GitHub - et non votre phrase de passe.

Étape 9 : Activez votre Theme

Félicitations ! La dernière étape consiste à activer votre WordPress -Theme . Seulement, pourquoi quitter le terminal pour cela ? RAIDBOXES a WordPress CLI déjà installé. Avec quelques lignes de code, vous pouvez économiser un clic dans l'interface utilisateur de WordPress . 

Exécutez cette commande dans le terminal : 

wp theme activate <your theme name>

Pour un aperçu complet des commandes que vous pouvez utiliser avec WP-CLI , veuillez vous référer à la documentation officielle de WordPress .

Si vous préférez l'interface utilisateur, vous pouvez accéder à tous vos Themes depuis votre tableau de bord RAIDBOXES BOX . Vous pouvez les trouver sous le point de navigation Plugins & Themes:

ssh-4

Conclusion

Si vous cherchez un moyen rapide, sûr et plus efficace de développer et de maintenir votre site WordPress , l'utilisation de Git et de SSH est la solution. Croyez-moi, vous vous demanderez bientôt comment vous avez pu vous débrouiller avec un autre flux de travail ! 

Mais chacun travaille à son propre rythme et a ses préférences quant au flux de travail approprié. Je vous recommande de donner une chance aux sciences humaines - et de suivre les étapes décrites. On ne sait jamais : vous pourriez être absolument ravi et ne jamais vouloir manquer ce flux de travail ! 

Merci beaucoup pour votre lecture. J'espère que cet article vous a aidé à mettre en place un flux de travail adéquat qui vous facilitera la vie lorsque vous travaillerez avec Custom Themes . Commencez dès aujourd'hui et profitez pleinement du tableau de bord RAIDBOXES! 

Quelles questions avez-vous pour Matthias ?

N'hésitez pas à utiliser la fonction de commentaire. Vous souhaitez être informé des nouveaux articles et conseils sur le sujet WordPress Développement ? Alors suivez-nous sur Twitter, Facebook ou via notre newsletter.

Matthias est le Chaos Calmer de RAIDBOXES. En tant que développeur de thèmes et de plugins, orateur aux WordCamps et contributeur actif de la communauté, il est régulièrement présent aux WordCamps et à d'autres événements sur le thème de WordPress. Il est toujours prêt pour un casse-croûte. Quand il n'est pas dans les parages, il a des chats sur les genoux.

Articles connexes

Commentaires sur cet article

Laisse un commentaire

Ton adresse électronique ne sera pas publiée. Les champs obligatoires sont marqués d'un *.