Astuces de Dev Web n°4 : Git, CVS, Mercurial, Perforce avec PHPStorm
On continue la série des astuces de développeur. Au programme ? L’intégration de Git, CVS, Mercurial, Perforce dans notre IDE favori : PHPStorm. Si vous ne connaissez pas PHPStorm, je vous conseille de lire cet article d’abord:
Vous connaissez PhpStorm ? Vous trouvez que faire des commandes Git, CVS, Mercurial, Perforce en console, ce n’est plus très fun ? Alors vous êtes sur le bon article.
Prenons un projet web classique, avec un index contenant un title simple (comme présenté ci-dessous) :
On doit maintenant initialiser notre projet Git. Pour ce faire, on clique sur VCS, présent sur le menu en haut. Puis sur Enable Version Control Integration… comme sur la capture d’écran :
Par la suite, PHPStorm nous propose de choisir notre système de versionning. Pour ce tuto, on sélectionne Git.
Bien entendu, on valide après avoir sélectionné notre système de versionning. PHPStorm va ensuite changer la couleur des fichier qui vont être commités, et de ceux qui ne le seront pas. PHPStorm spécifie alors en bas de la fenêtre qu’il a bien créé le Git :
En cliquant sur une page de votre projet, la fenêtre ci-dessous risque d’apparaître.
Je vous conseille vivement de cliquer sur No afin d’éviter de pourrir vos versionnings avec des fichiers de configuration provenant de PHPStorm. J’ai rajouté dans mon fichier index.html la phrase « Local History » pour vous montrer que PHPStorm intègre un historique local. Pour cela, on se rend dans le menu puis VCS, ensuite Local History, et pour finir Show History. Voici le rendu sur la capture d’écran ci-dessous :
Vous allez voir, c’est bien pratique ! Bien entendu, je ne vous ai pas fait un jeu de données énorme, mais quand vous travaillerez sur un projet conséquent vous verrez que le retour en arrière est bien utile. En cliquant sur Show History, la fenêtre suivante apparaît :
Ici, j’ai rajouté le mot History. Ainsi, en cliquant sur la double flèche au centre je peux revenir en arrière sur un élément précis. Sur la partie gauche figure la liste des modifications horodatées. En effectuant un clic droit dessus, on peut faire un Revert pour revenir à l’état d’un instant donné.
Passons au Commit Git
Au lieu d’effectuer un Git console traditionnel, nous allons utiliser soit le raccourci CTRL+K, soit le menu avec VCS -> Commit Changes… comme affiché dans la capture d’écran :
Si on a bien refusé d’inclure le fichier .vcs, on obtient cette fenêtre :
Ensuite, on écrit un message à notre commit. C’est le champ du milieu, intitulé Commit Message. De mon côté, j’ai écrit « My first commit ». Voici le résultat :
Il ne reste plus qu’a cliquer sur Commit en bas de la fenêtre, et notre commit local sera exécuté.
Maintenant, vous devez vous demander comment faire un push. Soit vous utilisez le raccourci CTRL + SHIFT + K, soit vous allez dans VCS -> Git -> Push comme ci-dessous :
On obtient cette fenêtre nous indiquant qu’il faut définir un remote. En effet, nous n’avons pas encore spécifié de repository, c’est-à-dire le lien de destination pour envoyer les fichiers de code de type Git.
Pour le tuto, j’ai crée un projet sur le site BitBucket qui permet d’avoir des projets privés et gratuits (dans la limite de 5 utilisateurs). Quand vous cliquez sur Define remote, vous obtenez cette petite fenêtre que j’ai déjà rempli :
C’est un ancien compte BitBucket, donc ne tenez pas compte du reste de l’url. Ici, PHPStorm vous demande le nom de votre repository. Dans Name, mettez ce qu’il vous plait ; et dans url, faites attention à bien prendre l’URL donnée par BitBucket dans votre projet. Ensuite, vous devez cliquer sur OK. Pour que BitBocket puisse vérifier que vous êtes le bon propriétaire du projet, vous devez lui donner votre clé publique id_rsa. Si vous ne savez pas ce qu’est une clé rsa, j’écrirai un article sur le sujet. D’ici-là vous pouvez continuer à lire cet article-ci.
Après avoir fourni votre clé de sécurité à BitBucket, vous pouvez cliquer sur OK. Une nouvelle fenêtre s’ouvre alors :
Pour faire simple, PHPStorm a besoin que vous déverrouilliez votre clé SSH avec votre passphrase afin de valider votre identité auprès de BitBucket. Si vous utilisez GitHub, vous verrez cette fenêtre à la place :
Et dans ce cas, pas besoin de clé SSH, juste de vos informations d’identification. Une fois authentifié auprès de votre service de versionning, revenez à la page précédente :
Enfin, la dernière étape consiste à faire le push et vous avez terminé le circuit. Pour faire un pull, rendez-vous dans le même menu VCS -> Git -> Pull, tout simplement.
Nous sommes maintenant arrivés à la fin de la première partie consacrée à Git. Dans un second temps, nous aborderons la partie avancée de Git sous PHPStorm. Au menu : l’historique de Git, les branches, les fusions de branches, comment ignorer certains fichiers et plein d’autres choses. En attendant, je vous conseille de lire aussi nos précédents articles sur PHPStorm :