IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

La version 3.0 de Magit, une interface Git dans Emacs, est disponible,
Elle contient 1264 commits provenant de 87 contributeurs

Le , par Bruno

66PARTAGES

10  0 
Jonas Bernoulli, le mainteneur de Magit, a annoncé la sortie de la version 3.0 du programme Magit, une interface Git dans Emacs qui met l'accent sur la rationalisation des flux de travail. Les commandes sont invoquées à l'aide de courtes séquences de touches mnémoniques qui prennent en compte la position du curseur dans l'interface hautement actionnable afin de fournir un comportement sensible au contexte. Magit 3.0 contient 1264 commits provenant de 87 contributeurs au cours des deux dernières années et demie. « J'ai le plaisir d'annoncer la sortie de la version 3.0 de Magit, constituée de 1264 commits depuis la dernière version il y a deux ans et demi », a déclaré Jonas Bernoulli.

Magit est une interface utilisateur textuelle complète pour Git. Elle comble le vide entre l'interface de ligne de commande Git et les différentes interfaces graphiques, vous permettant d'effectuer des tâches de contrôle de version aussi bien triviales qu'élaborées en appuyant simplement sur quelques touches mnémoniques.


Magit ressemble à une version améliorée de ce que l’on obtient après avoir exécuté quelques commandes Git, mais dans Magit, chaque bit d'information visible est également exploitable dans une mesure qui va bien au-delà de ce que fournit toute interface graphique Git et il se charge de rafraîchir automatiquement cette sortie lorsqu'elle devient périmée. En arrière-plan, Magit ne fait qu'exécuter les commandes Git et, si l’utilisateur le souhaite, il peut voir ce qui est exécuté, ce qui permet de facilement apprendre la ligne de commande Git en utilisant Magit.

Rappelons qu'Emacs ou EMACS pour Editor MACroS est une famille d'éditeurs de texte qui se caractérise par son extensibilité. Il est décrit comme « l'éditeur extensible, personnalisable, autodocumenté et à affichage en temps réel ». Avec plus de 10 000 commandes intégrées et son interface utilisateur, Emacs permet à l'utilisateur de combiner ces commandes en macros pour automatiser le travail.

Les implémentations d'Emacs comportent généralement un dialecte du langage de programmation Lisp qui offre une capacité d'extension profonde, permettant aux utilisateurs et aux développeurs d'écrire de nouvelles commandes et applications pour l'éditeur. Des extensions ont été écrites pour gérer le courrier électronique, les fichiers, les contours et les flux RSS, ainsi que des clones d'ELIZA, Pong, Conway's Life, Snake et Tetris.

Magit prend en charge et rationalise l'utilisation des fonctionnalités de Git que la plupart des utilisateurs et des développeurs d'autres clients Git pensaient apparemment ne pas pouvoir transposer de manière raisonnable dans une interface sans ligne de commande. Magit est à la fois plus rapide et plus intuitif que la ligne de commande ou que n'importe quelle interface graphique, et cela vaut aussi bien pour les débutants que pour les experts de Git.

Comme changement majeur, Bernoulli décrit les menus entièrement révisés utilisés pour sélectionner les arguments et invoquer les commandes de suffixe. Magit utilise le paquet Transient pour implémenter ces menus. Il a lancé Transient il y a deux ans et Magit l'utilise depuis lors, ce qui devrait être familier à la plupart des utilisateurs, a déclaré Bernoulli. Les notes de mise à jour sont disponibles sur Github.

« Au fil des ans, les utilisateurs m'ont demandé quand j'allais enfin sortir une nouvelle version et la réponse se résumait généralement à "dans environ trois mois". Je voulais vraiment envoyer les posters de la collecte de fonds avant de sortir la version 3.0, mais jusqu'à présent, cela n'a malheureusement pas eu lieu », a déclaré Jonas Bernoulli. « Je ne sais pas trop ce qui a changé aujourd'hui, mais cette fois-ci, j'ai décidé de changer l'ordre des choses et de publier la version immédiatement ». Voici, ci-dessous, les changements apportés par la version 3.0 de Magit :

  • le principal changement concerne les menus entièrement remaniés utilisés pour sélectionner les arguments et invoquer les commandes de suffixe. Magit utilise désormais le paquet Transient pour implémenter ces menus. Transient a été publié par Bernoulli il y a deux ans et Magit l'utilise depuis, donc la plupart des utilisateurs l'utilisent depuis longtemps ;
  • Magit-Section est maintenant distribué indépendamment de Magit, permettant à des paquets non liés de l'utiliser pour implémenter des tampons similaires à ceux de Magit. Contrairement à Transient, il est toujours maintenu dans le dépôt de Magit, cependant, il est maintenant accompagné de son propre manuel ;
  • au lieu de partir dans une croisade du type "tabulations vs espaces", Jonas Bernoulli a adapté Magit aux deux fractions. Tant que le dépôt est nommé en amont soit upstream soit origin, alors Magit devrait être capable de prendre la bonne décision sans aucune configuration de l'utilisateur ;
  • de même, Magit ne suppose plus que la branche principale est nommée master. Sans aucune configuration utilisateur, Magit essaie main, master, trunk et development dans cet ordre et utilise le premier qui existe dans le dépôt actuel comme branche principale.

Magit diffère considérablement des autres interfaces Git, et ses avantages ne sont pas immédiatement évidents à la simple vue de quelques captures d'écran. « Malheureusement, la plupart des utilisateurs potentiels ne connaissent même pas l'existence de Magit. D'autres sont peut-être au courant de son existence, mais n'envisageraient pas de l'essayer parce qu'il est implémenté comme une extension de l'éditeur de texte Emacs, et ce n'est pas ce qu'ils utilisent ».

Magit pour les utilisateurs non Emacs

Étant donné que, la plupart des utilisateurs potentiels ne connaissent pas l'existence de Magit. D'autres sont peut-être au courant de son existence, mais n'envisageraient pas de l'essayer parce qu'il est implémenté comme une extension de l'éditeur de texte Emacs, et ce n'est pas ce qu'ils utilisent.

Jonas Bernoulli dit vouloir changer cette perception de Magit. « C'est quelque chose que j'ai l'intention de changer au cours de l'année prochaine, car je pense que Magit peut être une excellente interface Git même pour les utilisateurs d'autres éditeurs et IDE. J'ai l'impression que de nombreux utilisateurs de Git veulent, ou du moins apprécieraient, quelque chose comme Magit ». La courbe d'apprentissage de Magit est relativement plate, pour autant que l'on connaisse déjà un peu Emacs et Git. Sans connaissance préalable de Emacs, la courbe est un peu plus raide.


Cependant, à part le fait que Magit ne semble pas très impressionnant à première vue, le principal facteur qui empêche les utilisateurs potentiels de l'essayer est la courbe d'apprentissage (réelle ou perçue) (et malheureusement aussi la réputation) d'Emacs. Les utilisateurs d'Emacs pensent bien sûr qu'il vaut la peine de franchir cette barrière, mais cela n'aidera ni ne convaincra quiconque a l'intention de s'en tenir à son éditeur ou IDE actuel et souhaite simplement essayer Magit.

« Je n'essaierai pas de changer l'opinion de quiconque sur Emacs lui-même. Je considère qu'il s'agit d'un merveilleux éditeur de texte et, plus important encore dans ce contexte, d'un excellent environnement pour mettre en œuvre une interface textuelle vers, par exemple, un système de contrôle de version », précise Bernoulli. « Vous pouvez considérer Emacs comme une alternative beaucoup plus performante que ncurses, c'est-à-dire comme un environnement ouvert qui facilite l'implémentation de toutes sortes d'applications. On peut également établir des parallèles avec les navigateurs Web » ajoute-t-il.

Pour les personnes qui utilisent autre chose qu'Emacs à des fins d'édition, l'utilisation de Magit n'est pas différente de l'utilisation de cet éditeur/IDE et d'une interface graphique distincte de Git et/ou de git en ligne de commande. Dans un tel scénario, certains avantages résultant de l'intégration étroite de l'interface de contrôle de version dans l'environnement d'édition sont perdus.

Source : EmacsAir

Et vous ?

Avez-vous une expérience avec Emacs ?

Que pensez-vous de Magit ?

Seriez-vous prêt à migrer vers Magit ? Pourquoi ?

Quelle fonctionnalité de Magit vous intéresse le plus ?

Voir aussi :

GNU Emacs v27.1 est disponible avec la prise en charge de HarfBuzz pour la mise en forme de texte et la prise en charge native de l'analyse JSON

Des hackers détournent le code source de PHP après s'être infiltrés dans le serveur git interne. Quiconque connaissait le mot de passe secret «zerodium» pouvait exécuter du code sur un site en PHP

Git, le système distribué de gestion de versions, vient de passer à la version 2.28 et remplace le nom master par init.defaultBranch lors de la création d'une première branche dans un référentiel

Git 2.26.0 est disponible avec le protocole de transport v2 par défaut et une mise à jour de la sous-commande git sparse-checkout

Sublime Merge 2 est disponible, l'interface de validation améliorée du client Git prend en charge différents workflows et apporte le système de plug-in

Une erreur dans cette actualité ? Signalez-le nous !