La mise en place d’un contrôle de version serait une tâche simple si vous travailliez en tant que développeur solo avec un dépôt local. Cependant, ce n’est pas le cas pour de nombreux projets professionnels. Au lieu de cela, une équipe mettra ses ressources en commun dans un dépôt distant en utilisant un hébergeur tel que GitHub. Il est donc important d’apprendre à pousser vers GitHub, car c’est quelque chose que vous devrez faire dans le cadre de votre flux de travail.

Cet article vous montrera comment pousser vers GitHub en utilisant la ligne de commande. Nous examinerons également des applications dédiées pour faciliter le processus. À la fin de l’article, nous expliquons pourquoi vous devriez apprendre à faire des demandes d’extraction et comment elles sont liées à la poussée de code. Tout d’abord, voyons comment vous utilisez GitHub pour vos projets.

Comment un développeur ou un programmeur utilise GitHub

GitHub est un outil essentiel pour les développeurs et les programmeurs du monde entier, et ce pour plusieurs raisons. Il vous permet de stocker votre code dans un endroit centralisé, ce qui facilite son accès et permet une meilleure collaboration avec d’autres développeurs.

Le logo GitHub.
Le logo GitHub.

Vous pouvez également suivre les modifications apportées à votre code et revenir à des versions antérieures si nécessaire. En outre, GitHub fournit des outils pour aider à gérer les problèmes et les bogues, ce qui facilite la maintenance de votre base de code.

La collaboration est l’une des principales raisons pour lesquelles vous pourriez utiliser GitHub comme système de contrôle de version (Version Control System ou VCS) à distance. Il vous permet de partager du code, de suivre les modifications et de collaborer sur les problèmes sans trop de difficultés. Cela peut contribuer à l’efficacité et à l’amélioration de la qualité du code.

GitHub vous offre également un moyen simple de gérer plusieurs versions d’une base de code, de suivre les modifications et de les annuler si nécessaire. Les grands projets et les efforts de collaboration en matière de logiciels libres ne sont que deux façons dont GitHub montrera sa valeur.

Même les cas d’utilisation simples peuvent être idéaux. Par exemple, vous pouvez stocker du code pour votre projet de développement web et envoyer des mises à jour à distance au fur et à mesure que vous apportez des modifications. De même, les projets d’intégration et de déploiement continus (CI/CD) bénéficieront de l’automatisation sous la forme d’actions GitHub pendant les phases de construction.

Un exemple de la façon dont les actions GitHub s'intègrent dans un flux de travail.
Un exemple de la façon dont les actions GitHub s’intègrent dans un flux de travail.

Dans l’ensemble, GitHub – et d’autres hôtes VCS distants tels que GitLab – fournit une plateforme pour la collaboration, le contrôle des versions et d’autres flux de travail de développement. Il peut contribuer à rationaliser le processus de développement et à améliorer la qualité du code. En tant que tel, vous voudrez apprendre à pousser vers GitHub, car cette connaissance vous sera utile presque tous les jours.

Comment pousser vers GitHub depuis le terminal (ligne de commande)

La suite de cet article vous montrera comment pousser sur GitHub. Il s’agit d’un processus simple à comprendre et à exécuter.

Cependant, vous devez vous assurer que vous avez configuré votre projet au préalable, sinon vous rencontrerez des erreurs. Dans notre première section, nous examinerons les outils et les compétences dont vous avez besoin, puis nous étudierons le processus lui-même en détail.

Ce dont vous avez besoin pour pousser sur GitHub

Il est important de s’assurer que vous avez configuré votre projet pour supporter l’utilisation d’un dépôt distant et l’intégration du push dans votre flux de travail. Pour cela, vous avez avant tout besoin d’un dépôt Git – un « repo » dans lequel stocker votre code. Il s’agit d’un dossier qui contient les fichiers associés à votre projet.

L’ensemble du processus de contrôle de version commence dans un environnement local sur votre ordinateur. Nous verrons plus loin les étapes exactes pour y parvenir, mais vous possédez peut-être déjà ces connaissances (ou savez où les trouver)

Vous avez également besoin d’un compte GitHub. En fait, vous pouvez également utiliser un autre hôte VCS en ligne, tel que GitLab, BitBucket, Buddy, et bien d’autres encore. Les instructions que nous vous donnons ici s’appliqueront, pour la plupart, à d’autres plateformes. Cependant, la comparaison de ces hébergeurs dépasse le cadre de cet article.

Pour pousser votre code sur GitHub, vous pouvez utiliser soit la ligne de commande, soit une interface utilisateur graphique (GUI). L’essentiel de notre article portera sur le flux de travail en ligne de commande, mais une section sera également consacrée à l’utilisation d’une interface utilisateur graphique, car certaines d’entre elles sont populaires. Cependant, notez que chaque interface graphique peut avoir un processus différent pour pousser vers GitHub, ce qui signifie que vous devez vous en tenir à une application particulière pour en tirer le meilleur parti.

Enfin, assurez-vous d’avoir le bon accès à votre répertoire. La documentation de GitHub est très complète à ce sujet, et vous devriez vous tourner vers des jetons d’accès HTTPS ou un accès Secure Shell (SSH). Sans cela, vous ne pourrez pas travailler !

1. Créer un dépôt GitHub

La première étape consiste à créer un nouveau dépôt en ligne sur GitHub. Vous pouvez le faire à partir de la ligne de commande, mais il est tout aussi simple de le faire à l’aide d’un navigateur web.

Une fois que vous vous êtes connecté ou inscrit à GitHub, rendez-vous dans le coin supérieur droit de l’écran et cherchez un menu déroulant Plus à côté de l’avatar de votre profil. Si vous l’ouvrez, vous verrez quelques options, dont Nouveau dépôt:

Choisir de créer un nouveau dépôt dans GitHub.
Choisir de créer un nouveau dépôt dans GitHub.

Une fois que vous avez cliqué sur cette option, vous arrivez sur la page Créer un nouveau dépôt. Celle-ci vous montrera un certain nombre de réglages pour vous aider à configurer votre dépôt distant :

Créer un nouveau dépôt dans GitHub.
Créer un nouveau dépôt dans GitHub.

Les options que vous définissez ici seront propres aux besoins de votre projet. Cependant, si vous avez déjà un dépôt local à pousser vers GitHub, nous devrions cocher le moins possible afin de garder la parité entre le dépôt local et le dépôt distant.

Cliquez ensuite sur le bouton Créer un dépôt, et GitHub se chargera de tout mettre en place. À ce stade, vous arrivez sur la page d’accueil du dépôt, avec des instructions sur la façon de créer un nouveau dépôt local lié au dépôt distant à l’aide de la ligne de commande. Le chemin que vous suivrez dépendra du fait que vous n’ayez pas encore de dépôt ou que vous souhaitiez cloner le contenu d’un projet existant.

Si vous avez déjà initialisé Git et alimenté votre dépôt local, vous n’aurez rien à faire à partir de la deuxième étape. Au lieu de cela, vous pouvez passer directement à la troisième étape, où nous verrons comment pousser du code sur GitHub à partir de votre dépôt local.

2a. Cloner votre dépôt Git distant

Si vous n’avez pas encore de dépôt local, la version GitHub sera la seule. La meilleure façon de synchroniser les deux emplacements est d’utiliser la commande git clone sur votre ordinateur. Cependant, vous avez besoin de l’URL de votre dépôt.

Pour l’obtenir, rendez-vous sur le dépôt dans GitHub, et cherchez l’option déroulante verte Code au-dessus de votre liste de fichiers :

Ouverture du menu déroulant Code dans GitHub.
Ouverture du menu déroulant Code dans GitHub.

Si vous ne voyez pas cette option, c’est probablement parce que votre dépôt n’est pas encore rempli. Notez que vous pouvez copier l’URL du dépôt à partir de la boîte bleue de configuration rapide en haut de l’écran. Passez simplement à HTTPS en utilisant les boutons, et copiez l’URL.

Utilisation des options de configuration rapide pour copier l'adresse URL d'un dépôt dans GitHub.
Utilisation des options de configuration rapide pour copier l’adresse URL d’un dépôt dans GitHub.

Cependant, nous préférons générer un fichier .gitignore, car vous en aurez besoin de toute façon. Vous pouvez utiliser gitignore.io pour rechercher les outils que vous utilisez et, à partir de là, générer un fichier .gitignore complet à téléverser dans le dépôt :

Le site web gitignore.io.
Le site web gitignore.io.

Quoi qu’il en soit, une fois que vous pouvez ouvrir le menu déroulant Code, il affichera les URL de votre répertoire. Il y aura des options pour HTTPS, Secure Shell (SSH), et d’autres. Cependant, l’approche la plus simple est d’utiliser l’URL HTTPS. Vous pouvez cliquer sur la petite icône Copier à côté de l’URL en question pour la copier dans votre presse-papiers.

Ensuite, retournez à votre Terminal ou à votre application de ligne de commande, et exécutez ce qui suit :

git clone <full-github-url>

Une fois la commande exécutée, Git copiera le dépôt distant dans votre environnement local.

2b. Initialiser Git dans votre dossier de projet local

Pour les situations où vous n’avez pas encore de version locale de votre dépôt distant, vous devez en initialiser une. La plupart du travail que vous ferez sera local, en poussant les changements vers le serveur distant à intervalles réguliers. Voici les étapes à suivre :

  • Tout d’abord, cd vers un dossier que vous souhaitez utiliser pour votre projet.
  • Ensuite, exécutez la commande git init. Cela initialisera Git dans votre dossier de projet local et créera un répertoire .git caché.
  • Ajoutez votre fichier .gitignore à la racine du dossier local de votre projet, car vous ne voudrez pas mettre en scène certaines modifications relatives aux fichiers système.

À ce stade, vous devez indexer vos fichiers actuels. Vous le faites de la manière habituelle en utilisant git add, puis en validant les modifications :

git add .

git commit -m “Initial Commit”

git branch -M trunk

La dernière ligne change votre branche principale en quelque chose d’autre de votre choix si vous n’avez pas encore basculé de master. Ce dernier est problématique car il a des connotations négatives pour l’esclavage, il est donc recommandé de le changer. Nous avons utilisé trunk ici, mais main est également acceptable. Si vous savez que cette ligne n’est pas nécessaire, vous pouvez l’omettre.

À ce stade, vous êtes prêt à apprendre comment pousser sur GitHub !

3. Ajouter une nouvelle origine distante et pousser votre code sur GitHub

Une fois que vous avez créé un nouveau dépôt distant sur GitHub, vous devez ajouter une nouvelle « origine distante » à votre dépôt local. Il s’agit essentiellement du lien vers votre dépôt distant, afin que votre dépôt local sache où envoyer les modifications en amont.

Pour ce faire, entrez la commande suivante dans votre terminal :

git remote add origin <github-url>

D’un point de vue technique, le dépôt distant que vous ajoutez peut avoir n’importe quel nom. Cependant, la plupart des gens l’appellent « origin » car vous n’utilisez qu’un seul remote add, et cela offre une clarté absolue. À ce stade, vous pouvez pousser vers GitHub en utilisant la commande suivante :

git push -u origin trunk

Cette commande poussera votre code vers la nouvelle origine distante – nommée « origin » – et mettra la branche amont à « trunk » Vous pouvez également pousser n’importe quelle branche vers le dépôt distant si vous en avez besoin.

Exécution d'une commande git push dans le terminal.
Exécution d’une commande git push dans le terminal.

Une fois le processus terminé, vous devez vérifier que le push a été un succès. Il y a plusieurs façons de le faire. Par exemple, vous pouvez vous rendre sur le dépôt sur GitHub et vérifier que les modifications sont en cours :

Vérifier l'état d'un dépôt Git sur GitHub.
Vérifier l’état d’un dépôt Git sur GitHub.

Cependant, vous pouvez également lancer git log à partir de la ligne de commande :

Exécution d'une commande git log dans le terminal et affichage de la sortie.
Exécution d’une commande git log dans le terminal et affichage de la sortie.

Cette commande affiche chaque commit de votre dépôt, y compris celui que vous venez de pousser. Ainsi, si le commit se trouve dans le journal, le push a été un succès.

Comment pousser vers GitHub sans erreurs

Dans certains cas, vous pouvez rencontrer une erreur lorsque vous essayez de pousser du code sur GitHub :

Erreur de clé RSA après l'exécution d'un git push.
Erreur de clé RSA après l’exécution d’un git push.

Cela se produit lorsque vous avez déjà une connexion sécurisée à GitHub à travers un ancien projet mais en utilisant une ancienne clé RSA. Nous avons un guide sur la façon de résoudre ce problème en général. Cependant, pour résoudre ce problème pour GitHub en particulier, vous pouvez exécuter ce qui suit :

ssh-keygen -R github.com

Cela mettra à jour votre fichier « known hosts », puis affichera un message de confirmation :

Suppression d'une ancienne clé d'hôte à l'aide du terminal.
Suppression d’une ancienne clé d’hôte à l’aide du terminal.

À partir de là, exécutez la commande suivante pour ajouter la nouvelle clé RSA à votre fichier d’hôtes connus :

curl -L https://api.github.com/meta | jq -r '.ssh_keys | .[]' | sed -e 's/^/github.com /' >> ~/.ssh/known_hosts

En fait, vous pouvez également voir une erreur ici, concernant le paquetage jq. Si c’est le cas, vous pouvez exécuter l’une ou l’autre des opérations suivantes, en fonction de votre système d’exploitation :

  • Windows : curl -L -o /usr/bin/jq.exe https://github.com/stedolan/jq/releases/latest/download/jq-win64.exe
  • Mac : brew install jq
  • Linux : apt-get update | apt-get -y install jq

Une fois l’installation terminée, exécutez à nouveau la commande et attendez qu’elle se termine :

Création d'une nouvelle clé RSA à l'aide du terminal.
Création d’une nouvelle clé RSA à l’aide du terminal.

Vous pouvez enfin exécuter à nouveau la commande git push et, cette fois, vous devriez voir le processus se terminer. Si ce n’est pas le cas, le problème est probablement dû à des clés SSH incorrectes ou même au fait que vous devez établir des connexions sécurisées à l’aide de clés dédiées. Nous avons un guide complet sur la façon de générer de nouvelles clés SSH pour GitHub, et la documentation de GitHub est également complète ici.

Utiliser une interface graphique pour pousser votre code sur GitHub

Bien que le processus de transfert de code vers GitHub soit simple une fois que vous l’avez configuré, il y a beaucoup d’étapes, de mises en garde et de sous-processus à prendre en compte. Une interface graphique peut simplifier le processus.

Par exemple, vous disposez de toutes les fonctionnalités de la ligne de commande, mais en utilisant une interface plus agréable (avec le glisser-déposer dans certains cas). De plus, il est souvent plus facile de visualiser et de gérer les modifications via une interface graphique, en particulier si vous n’êtes pas familier avec les outils de ligne de commande.

Si vous savez que vous n’aurez jamais besoin d’utiliser votre application GUI pour accéder à un autre hôte VCS distant, GitHub Desktop pourrait être parfait.

L'application GitHub Desktop.
L’application GitHub Desktop.

Cette application vous permet de créer et de gérer des dépôts, d’apporter des modifications et de les transférer sur GitHub en quelques clics. Elle utilise la fonctionnalité « glisser-déposer » et dispose également d’un outil de « diff visuel » qui simplifie l’identification des changements de code entre les versions :

Visualisation des différences dans un commit à l'aide de GitHub Desktop.
Visualisation des différences dans un commit à l’aide de GitHub Desktop.

Sourcetree est une autre interface graphique Git populaire que nous examinons dans notre tour d’horizon des outils de développement web. Bien que le VCS préféré soit BitBucket (en raison du fait qu’il s’agit d’un produit Atlassian), vous pouvez toujours utiliser l’outil avec GitHub. L’outil de résolution des conflits de fusion est également pratique et constitue l’une des fonctionnalités les plus remarquables.

GitKraken est sans doute la plus belle application GUI disponible et offre une version gratuite raisonnable pour les dépôts locaux et publics. Elle prend en charge tous les principaux hôtes VCS – GitHub, bien sûr, mais aussi GitLab et BitBucket, entre autres. Nous adorons la représentation visuelle de votre dépôt, et la solution offre également des fonctionnalités intéressantes pour les équipes.

Utiliser GitHub Desktop pour pousser vers GitHub

Bien que le processus soit légèrement différent d’une application à l’autre, GitHub Desktop est très simple. Vous travaillez dans un écran unique qui utilise plusieurs fenêtres et panneaux. Une fois que vous avez apporté une modification à un fichier (que vous pouvez ouvrir dans l’éditeur de votre choix à partir d’un menu contextuel avec un clic droit), vous le validez à l’aide d’un petit widget à l’écran :

Transmettre une modification dans GitHub Desktop.
Transmettre une modification dans GitHub Desktop.

Cette validation fera partie de la section Pousser l’origine dans la barre d’outils supérieure : Si vous n’avez pas de modifications à livrer, vous recevrez également une notification pour pousser vos livraisons vers le serveur distant d’origine :

Pousser des modifications vers l'origine distante dans GitHub Desktop.
Pousser des modifications vers l’origine distante dans GitHub Desktop.

Il s’agit d’une solution en un clic pour pousser des modifications vers votre dépôt GitHub. L’ensemble du flux de travail est rapide, indolore et simple à exécuter.

Utiliser l’hébergement d’applications de Kinsta et GitHub

Si vous êtes un client de Kinsta, vous pouvez nous confier toutes vos applications. Notre hébergement d’applications et de bases de données vous permet de déployer presque n’importe quelle application en utilisant un certain nombre de langages, tels que PHP, Node, Python, et plus encore. Vous vous connectez à GitHub sans avoir besoin d’utiliser une multitude de commandes Git.

Pour commencer, connectez-vous à votre tableau de bord Kinsta et accédez à l’écran Applications. Il vous semblera vide lorsque vous y accéderez pour la première fois :

La page Applications MyKinsta dans le tableau de bord.
La page Applications MyKinsta dans le tableau de bord.

Cependant, si vous cliquez sur le bouton Ajouter un service, vous aurez la possibilité de déployer une application ou une base de données. Pour cet exemple, nous choisirons Application:

Ajouter un nouveau service en utilisant le bouton correspondant dans l'écran Applications de Kinsta.
Ajouter un nouveau service en utilisant le bouton correspondant dans l’écran Applications de Kinsta.

Kinsta vous demandera alors de vous connecter à GitHub afin d’importer des dépôts de la plateforme :

Choisir d'intégrer GitHub lorsque vous ajoutez un nouveau service.
Choisir d’intégrer GitHub lorsque vous ajoutez un nouveau service.

L’assistant qui vient ensuite vous aidera à configurer votre application. Vous devez d’abord choisir un dépôt depuis GitHub, puis sélectionner la branche par défaut :

Configurer les détails de l'application pour votre déploiement dans l'assistant MyKinsta Ajouter une application.
Configurer les détails de l’application pour votre déploiement dans l’assistant MyKinsta Ajouter une application.

Vous devez également donner un nom à votre application dans MyKinsta et sélectionner un centre de données. Une fois que vous avez cliqué sur Continuer, vous devez ajuster les réglages de l’environnement de construction :

Définir les options de l'environnement de construction dans l'assistant de déploiement MyKinsta.
Définir les options de l’environnement de construction dans l’assistant de déploiement MyKinsta.

Ici, vous avez plusieurs options :

  • Choisir une machine de construction dans la liste.
  • Configurer une image de conteneur, soit en utilisant l’automatisation, soit à partir d’un chemin spécifique de votre choix.

Ensuite, vous devez configurer vos ressources et vos processus. Nos exemples de démarrage rapide incluent les processus web dont vous avez besoin, mais vous pouvez également configurer les vôtres. Notez que vous pouvez avoir autant de processus que votre budget le permet :

Spécifier les ressources dans l'écran de l'assistant Ajouter une application.
Spécifier les ressources dans l’écran de l’assistant Ajouter une application.

Une fois les coûts d’utilisation mensuels affichés, vous pouvez effectuer le paiement. À ce stade, vous pouvez utiliser l’hébergement d’applications avec l’intégration de GitHub. Il y a beaucoup plus à découvrir sur l’hébergement d’applications et de bases de données, et notre documentation est complète et approfondie.

Résumé

GitHub est un outil essentiel pour les développeurs et les programmeurs. Il fournit un dépôt centralisé pour stocker, suivre et collaborer sur le code. Une fois que vous aurez appris à pousser votre code sur GitHub à partir d’un dépôt local, vous pourrez participer à cette collaboration.

En utilisant la ligne de commande, il est facile de pousser votre code vers GitHub et vous n’aurez besoin que d’une poignée de commandes une fois que vous aurez tout configuré. Cependant, vous pouvez envisager d’utiliser une application graphique dédiée, telle que GitKraken ou GitHub Desktop. Celles-ci peuvent éliminer la ligne de commande de l’équation et vous permettre d’effectuer presque toutes les tâches dont vous avez besoin avec Git à partir d’une interface familière.

De plus, GitHub est excellent en combinaison avec l’hébergement d’applications et de bases de données de premier plan de Kinsta. Cela vous permet de connecter votre dépôt GitHub à notre réseau de 25 centres de données  et de prendre en charge une multitude de frameworks différents. La tarification basée sur les ressources est également compétitive et tout à fait à la portée de la plupart des gens !

Vous avez des questions sur la façon de pousser vers GitHub ? Posez-les dans la section des commentaires ci-dessous !

Jeremy Holcombe Kinsta

Rédacteur en chef du contenu et du marketing chez Kinsta, développeur web WordPress et rédacteur de contenu. En dehors de WordPress, j'aime la plage, le golf et le cinéma. J'ai aussi des problèmes avec les personnes de grande taille ;).