Git est un outil génial. Il simplifie le processus de contrôle de version et permet aux utilisateurs de partager et de contribuer facilement du code les uns aux autres. Git est également indépendant du système et du contenu. Cela signifie qu’il peut fonctionner sur n’importe quelle plate-forme, ce qui en fait un outil très utile et recherché pour les programmeurs et les utilisateurs occasionnels.
Un problème avec Git, cependant, est qu’il vous oblige à utiliser un utilitaire de ligne de commande pour utiliser pleinement ses fonctions. Cela signifie que pour utiliser Git, vous devez apprendre un certain nombre de commandes qui lui sont spécifiques. Cependant, si vous utilisez Emacs, il peut y avoir un meilleur moyen.
Magit est un frontal puissant pour Git dans Emacs. Il vous permet d’utiliser facilement et de manière transparente Git dans Emacs pour créer, manipuler et enregistrer des référentiels Git via de simples raccourcis clavier Emacs. Non seulement cela, Magit adapte également automatiquement les référentiels Git existants via son interface. Cela signifie que vous pouvez installer Magit dès maintenant et l’utiliser immédiatement pour gérer le contrôle de version.
Comment fonctionne Magit
Magit est, à la base, un porcelaine pour Git dans Emacs. Il se comporte comme un programme conteneur qui traduit les différentes fonctions Git en raccourcis clavier ou en repères visuels. Cela signifie que Magit permet à un utilisateur peu ou pas expérimenté dans l’utilisation de Git de l’utiliser correctement pour le contrôle de version.
Installation de Magit
Sachant cela, ajouter Magit à votre client Emacs est incroyablement facile. Pour le moment, Magit est disponible dans le référentiel MELPA sous forme de package. Cela signifie que pour l’installer, vous devrez d’abord dire à Emacs de regarder ce référentiel. Pour ce faire, vous pouvez ajouter le code Lisp suivant à votre fichier init.el :
(require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/")) (package-initialize)
De là, vous pouvez appuyer sur Autre + X puis tapez « package-install ». Cela fera apparaître une petite invite où vous pourrez taper le nom du package Emacs que vous souhaitez installer. Dans ce cas, vous devez taper « magit » et appuyer sur Entrer. Cela téléchargera à son tour le code source de Magit, puis le compilera et l’installera pour vous.
Utilisation de Magit
L’utilisation de Magit est relativement simple. L’un des raccourcis clavier les plus importants que vous utiliserez est Ctrl + Xalors g.
Cela ouvrira l’écran d’état de Magit et affichera les changements d’état actuels pour un référentiel particulier. Par exemple, je peux appuyer sur ceci Ctrl + Xalors g sur un référentiel et il affichera le dernier statut ainsi que certains des commits que j’ai faits récemment.
Ajouter et valider des fichiers
L’une des principales caractéristiques de Magit est qu’il examine activement tous les fichiers du référentiel Git actuel. Cela signifie que contrairement aux méthodes Git traditionnelles, vous pouvez facilement ajouter des fichiers non suivis au contrôle de version. Par exemple, je peux appuyer sur Ctrl + Xalors g pour afficher les modifications que j’ai apportées au référentiel actuel.
De plus, cela vous permet de revoir et de sélectionner uniquement les fichiers que vous souhaitez ajouter ou valider. Par exemple, si vous avez deux nouveaux fichiers et que vous ne souhaitez en ajouter qu’un seul. Vous pouvez facilement sélectionner le fichier que vous voulez et appuyer sur S pour le mettre en scène dans Magit. Ceci est similaire à faire un git stage ./file
dans la ligne de commande.
Une fois qu’un fichier est en préparation, vous pouvez désormais valider ces modifications dans le système de fichiers Git. Pour ce faire, vous pouvez simplement appuyer sur C deux fois pour indiquer à Magit que vous souhaitez valider les modifications par étapes dans Git. Cela fera apparaître le tampon de message de validation où vous pourrez taper un bref résumé de votre validation. De là, vous pouvez ensuite appuyer sur Ctrl + C deux fois pour enregistrer votre commit.
Création d’un nouveau référentiel Git
Cependant, les fonctions de Magit ne se limitent pas seulement aux référentiels Git existants. En cela, il est également possible de créer un nouveau référentiel à partir de zéro via ce programme.
Par exemple, vous pouvez ouvrir un répertoire non Git en appuyant sur Ctrl + Xalors ré et en tapant le chemin de ce répertoire. Cela indiquera à Emacs de charger ce dossier particulier en tant que tampon Dired.
Une fois terminé, vous pouvez appuyer sur Ctrl + Xalors g exécuter Magit. Cela indiquera au programme de rechercher tous les fichiers Git existants dans le répertoire actuel. Vous pouvez appuyer sur Entrer ici pour forcer le programme à créer un nouveau dépôt dans le dossier courant.
À partir de là, Magit générera un écran d’état qui affichera tous les fichiers du répertoire actuel. Vous pouvez alors appuyer sur S sur l’en-tête « Fichiers non suivis » et C pour ajouter et valider ces fichiers dans le système de fichiers Git.
Créer et changer de branche Git
Une autre fonctionnalité brillante de Magit est la possibilité de manipuler les branches Git. Cela signifie que vous pouvez facilement créer et vous déplacer entre les branches d’un référentiel à partir du programme.
Semblable aux commandes ci-dessus, vous pouvez accéder à cette fonction en appuyant sur Ctrl + Xalors g. Vous pouvez alors appuyer sur B pour indiquer à Magit que vous souhaitez accéder à sa fonction Branche.
À partir de là, vous pouvez effectuer un certain nombre de fonctions Git liées à la branche. Par exemple, je peux appuyer sur N pour indiquer à Magit de créer une nouvelle branche pour le référentiel actuel. Il me demandera ensuite d’où je veux que la branche commence ainsi qu’un nom court pour celle-ci.
Dans mon cas, ce sera la première branche que je ferai pour ce référentiel. En tant que tel, je peux simplement appuyer sur Entrer sur la première question et indiquez « Branche-1 » pour son nom.
Une fois cela fait, vous pouvez maintenant passer à la branche que vous venez de créer. Pour ce faire, vous pouvez appuyer sur Ctrl + Xalors g pour amener l’écran d’état et appuyez sur B pour ouvrir la fonction Branche.
Vous pouvez alors appuyer sur B à nouveau pour indiquer à Magit que vous souhaitez passer à une autre branche Git. Dans mon cas, je vais taper le nom « Branch-1 » pour passer à la branche que j’ai créée.
À partir de là, vous travaillez maintenant sur une branche Git différente. En tant que tel, vous pouvez également utiliser les fonctions d’ajout et de validation décrites ci-dessus pour apporter des modifications spécifiques à la branche de votre référentiel.
Pousser et tirer depuis une télécommande Git
Une autre fonctionnalité que vous pouvez utiliser dans Magit est la possibilité de communiquer avec un serveur Git en ligne. En cela, le programme vous permet à la fois de pousser et de tirer à partir d’une télécommande Git particulière. Cela peut être extrêmement utile si vous utilisez Git pour un projet collaboratif avec d’autres personnes.
L’ajout d’une nouvelle télécommande en ligne pour un référentiel local est relativement simple. Pour ce faire, vous devez d’abord appuyer sur Ctrl + Xalors g pour afficher l’écran d’état. De là, vous devez ensuite appuyer sur Changement + M pour ouvrir la fonction Ajouter de Magit.
Une fois terminé, vous pouvez appuyer sur UN pour ajouter une nouvelle télécommande Git. Magit vous demandera alors le nom et l’URL de la télécommande que vous souhaitez ajouter. Dans mon cas, j’utiliserai mon compte Github pour lier mon référentiel local à un référentiel en ligne.
Avec cela, vous pouvez maintenant effectuer la poussée initiale vers votre référentiel en ligne. Pour ce faire, vous devez revenir à l’écran d’état et appuyer sur Changement + P. Cela fera apparaître la fonction Push de Magit et vous pourrez appuyer sur P ici pour pousser l’arborescence Git actuelle en ligne.
D’autre part, il est également possible d’obtenir toutes les modifications récentes dans un référentiel distant. Semblable à un git pull
vous pouvez également utiliser Magit pour récupérer les mises à jour d’une branche et d’un référentiel spécifiques.
Pour ce faire, vous devez revenir à l’écran d’état de Magit et appuyer sur Changement + F. Vous pouvez alors appuyer sur P à nouveau pour tirer à partir de la branche principale d’une télécommande.
Fusionner des arbres Git
Enfin, l’une des fonctionnalités les plus remarquables de Magit est qu’il vous permet également de fusionner facilement des arbres Git depuis Emacs. Cela peut être particulièrement utile si vous essayez de corriger un bogue dans votre code et que vous souhaitez disposer d’un moyen rapide d’implémenter des modifications à partir d’une branche expérimentale.
Une chose importante à noter est que pour fusionner un arbre Git, vous devez vous assurer que les branches que vous souhaitez fusionner sont actuellement propres. Par exemple, si je veux fusionner ma Branche-1 avec Master, je dois mettre en scène et valider toutes les modifications entre ces deux branches.
Sachant cela, fusionner une branche Git à l’aide de Magit est relativement facile. Pour ce faire, vous devez appuyer sur Ctrl + Xalors g pour accéder à l’écran d’état de Magit. De là, vous devez ensuite appuyer sur M pour dire à Magit que vous voulez fusionner les arbres Git.
Une fois là-bas, vous pouvez appuyer sur M à nouveau pour démarrer le processus de fusion. En cela, Magit vous demandera la branche que vous souhaitez fusionner avec l’arborescence principale. Dans mon cas, je vais taper « Branche-1 » pour dire spécifiquement à Magit que je veux que cette branche fusionne avec l’arborescence principale.
Questions fréquemment posées
Est-il possible de désorganiser un fichier dans Magit ?
Oui! Il est possible de déclasser un fichier dans Magit. Semblable à la mise en scène d’un fichier, vous devez appuyer sur Ctrl + Xalors g pour accéder à l’écran d’état de Magit. De là, vous pouvez ensuite sélectionner le fichier que vous voulez et appuyer sur tu pour le démasquer.
De plus, vous pouvez également appuyer sur Changement + tu tandis que dans cet écran pour désorganiser tous les fichiers actuellement préparés dans le tampon de Magit.
Magit peut-il créer des correctifs de code similaires à git patch ?
Oui! Vous pouvez facilement utiliser Magit pour créer des correctifs de code à partir de vos commits de code. Pour ce faire, vous devez appuyer sur Ctrl + Xalors g et appuyez sur Changement + O. Cela indiquera à Magit que vous souhaitez créer ou appliquer un correctif dans ce référentiel de code.
À partir de là, vous devez vous assurer que vous êtes dans la branche à partir de laquelle vous souhaitez créer un correctif. Une fois là-bas, vous devez ensuite appuyer sur C deux fois pour créer un correctif à partir du dernier commit de cette branche.
Est-il possible d’annuler une fonction Magit pendant son exécution ?
Oui! Comme toutes les fonctions d’Emacs, vous pouvez facilement annuler n’importe quelle action sous Magit en appuyant sur Ctrl + g. Cela inclut tous les menus principaux et secondaires de Magit ainsi que toutes les invites auxquelles vous accédez.
De plus, vous pouvez également arrêter de force une fonction en cours d’exécution en appuyant sur Ctrl + g trois fois. Cela peut être particulièrement utile si vous êtes sur une machine plus lente et qu’une fonction Magit ralentit votre ordinateur.