Forum général.cherche-logiciel Interface graphique Git multiplateforme libre

Posté par  . Licence CC By‑SA.
Étiquettes :
4
13
juin
2017

Bonjour,

Je suis à la recherche d'une interface graphique pour Git.

Il faudrait que celle-ci soit :
- libre ;
- multiplateforme (Linux, et MS-Windows à minima) ;
- intuitive ;
- stable ;
- avec une plus-value notable par rapport à Git en ligne de commande.

J'ai déjà essayé :
- GitExtension : plante sans arrêt sous Linux (Debian SID, Ubuntu Xenial) ;
- Git-Cola : pas intuitif du tout ;
- QGit : la plus-value par rapport à la ligne de commande est assez faible ;
- Git-Eye : C'est l'outil parfait mais je ne comprends pas les termes de la licence, c'est libre ou pas ?

Merci de vos retour

O.

  • # pour faire quoi ?

    Posté par  . Évalué à 2.

    en fait la question à se poser, c'est une interface graphique pour faire quoi ?
    des push/pull/merge/cherrypick ?
    ou juste
    consulter les logs et les differences entre les versions ?

    parce que sinon il y a quelques interfaces web, pour visionner ton arbre, tes changelogs.

    • [^] # Re: pour faire quoi ?

      Posté par  . Évalué à 2.

      Merci pour ton commentaire qui contient plus de questions que de réponse.

      en fait la question à se poser, c'est une interface graphique pour faire quoi ?

      parce que c'est ma problématique du moment

      des push/pull/merge/cherrypick ?

      entre-autre, oui

      ou juste
      consulter les logs et les differences entre les versions ?

      Non, je veux tout faire avec, les add, commit, push, pull, merge, branch, etc, etc.

  • # Meilleure GUI == CLI

    Posté par  . Évalué à 5.

    J’ai essayé un certain nombre de GUI a une époque, et je finis irrémédiablement bloqué. Que se soit après une phase de mise au point basé sur des printf, j’ai besoin du git add -i, de reconcaténer des commit avant de livrer git rebase -i

    C’est àmha la meilleure interface. Je ne sais pas si je suis le seul, mais en GUI je me sens oppressé et inefficace.

    • [^] # Re: Meilleure GUI == CLI

      Posté par  . Évalué à 5.

      mais en GUI je me sens oppressé et inefficace

      Je suis un adepte du shell, de vim, de awk, sed… de tout ce qui est ligne de commande. Mais pour Git, mon sentiment est à l'opposé du tien. En fait sous Git j'aime avoir une vision d'ensemble, un bon outil de merge, pouvoir comparer les versions de differents commits, etc. La ligne de commande Git est juste tout ce dont je n'ai pas envie de me soucier, d'où ma demande.
      Merci quand même pour ton retour.

      • [^] # Re: Meilleure GUI == CLI

        Posté par  . Évalué à 4.

        Si tu trouves une GUI qui ne casse pas le workflow de git, qui permet faire toutes les actions de git essentielles (les rebase/add -i le sont) etc. préviens moi.

        Au boulot certains sont content du plugin git d’éclipse, mais je ne pourrais en juger.

        Bonne chasse, et montre nous ton gibier.

        • [^] # Re: Meilleure GUI == CLI

          Posté par  . Évalué à 3.

          Au boulot certains sont content du plugin git d’éclipse

          Je suppose que tu parle d'EGit : c'est que j'ai utilisé pendant près de deux ans. J'en suis plutôt content (je n'ai jamais fait de rebase). Mais il est attaché à Eclipse et je cherche une solution stand-alone.

          J'ai trouvé en Git-Eye la même interface, seule sa la licence me laisse perplexe.

      • [^] # Re: Meilleure GUI == CLI

        Posté par  (Mastodon) . Évalué à 3.

        je comprends ce que tu veux dire, la gestion de conf a qqchose de visuel.

        je fais tout en ligne de commande, mais je "fais le point" avc gitk (qui vient en standard avec git) pour comprendre la situation, ou vérifier après un truc un peu tordu etc.

        En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.

      • [^] # Re: Meilleure GUI == CLI

        Posté par  . Évalué à 2. Dernière modification le 14 juin 2017 à 19:04.

        Salut !

        Personnellement, j'ai plus l'impression que ce que tu cherches, c'est une personne qui te fasse l'intégration plutôt qu'un logiciel magique (dans le sens où à la fois il te laissera la liberté de tout faire, mais en même temps, tu t'y sentiras confortable).

        Pour le coup, je rejoins totalement l'avis d'Anthony. Git est un outil qui te laisse travailler comme tu le souhaites, sans imposer de manière de faire, de t'organiser. C'est aussi pour ça que beaucoup le trouvent contre-intuitif j'imagine.

        Seulement, je suis intimement convaincu qu'il est impossible de réaliser une interface graphique qui soit aussi rapide que l'utilisation en ligne de commande et permette d'avoir autant de liberté.
        Cela n'impose pas qu'on ne puisse pas utiliser git en s'aidant d'autres outils (notamment pour les merges), mais pour gérer le workflow, pour moi c'est impossible et inefficace.

        Je pense que ce qu'il te faut (tout comme ça a du être très sûrement le cas avec vim), c'est du temps pour comprendre comment l'outil fonctionne et ce qu'il permet, ne pas hésiter à bien le configurer, et l'accompagner d'alias et de scripts x)

        Du coup, la réponse à la question, c'est : Non, je ne pense pas qu'il en existe (qui ait une plus-value tout du moins x) ), et je pense au contraire que c'est impossible qu'il puisse en exister un jour d'ailleurs…

        mistiru

  • # GitLab

    Posté par  . Évalué à 3.

  • # Git eye

    Posté par  . Évalué à 4. Dernière modification le 13 juin 2017 à 17:56.

    Les termes de la licence sont pourtant très clairs dès les premières lignes:

     1.  Grant of License. Subject to the terms of this Agreement and each applicable 
          Third Party License (as defined below in Section 2), CollabNet, Inc.
          ("CollabNet") hereby grants You a non-exclusive, non-transferable, object
          code only license to: 
           a.  Download the Software; 
           b.  Copy the Software for internal use only; and 
           c.  Modify the Software and redistribute it internally only, unless otherwise 
               set forth in a Third Party License. 
    

    traduction approximative:

    1. Attribution de licence. Applicable aux termes de ce Contrat et à chaque Licence d'un Tiers (telle que définie dans la Section 2), CollabNet Inc vous attribue une licence non-exclusive, non transférable concernant uniquement le code objet (binaire ?) pour:
    a. télécharger le Logiciel;
    b. Copier le Logiciel pour une usage interne uniquement; et
    c. Modifier le Logiciel et le redistribuer en interne uniquement, sauf indications autres précisées dans une Licence d'un Tiers.
    

    Conclusion: ce logiciel n'est pas libre.

    Je ne connais aucun des logiciels que tu cites, mais que cherches tu que git gui ne sache pas faire ?

    • [^] # Re: Git eye

      Posté par  . Évalué à 3.

      Conclusion: ce logiciel n'est pas libre.

      Merci pour ta réponse sur la licence, j'ai eu la même conclusion. Ce qui est surprenant, c'est que cette licence ne se trouve que via google, aucun lien sur le site de l'éditeur.

      que cherches tu que git gui ne sache pas faire

      De l'intuitivité ! Je trouve que git gui n'est pas intuitif et que son ergonomie est discutable. Mais il est vrai que ces deux points là sont totalement subjectifs et donc difficilement mesurables.
      Je trouve aussi que git gui, même couplé à gitk n'apporte que peu par rapport à la ligne de commande : exemple voir un diff dans med (ou kdiff3) est plus lisible qu'une succession de + et de -.

  • # git gui & gitk

    Posté par  . Évalué à 3.

    Sous Linux, avec git version 2.13.1 ces 2 commandes offres un GUI. Ils sont écrits en tcl/tk.
    Je ne sais pas si sous Windows ils sont disponibles, mais je serais surpris si ce n'était pas le cas.

    • [^] # Re: git gui & gitk

      Posté par  . Évalué à 2.

      Note : Sur mon Linux ils sont dans 2 packages indépendant du git cli, mais ils sont installés pas défaut.

    • [^] # Re: git gui & gitk

      Posté par  . Évalué à 2.

      Effectivement je n'en avais pas parlé dans mon post : je viens de répondre à ce sujet dans un fil de discussion un peu plus haut.

  • # gitlab

    Posté par  . Évalué à 1.

    Pour avoir une vue d'ensemble, gérer les fusions, branches, etc, j'utilise Gitlab.
    Pour les opérations de base, chaque développeur utilise le client git de son choix ( pour ma part, j'utilise la CLI + emacs-magit)

  • # tortoise ?

    Posté par  . Évalué à 4.

    Perso j'utilise beaucoup tortoiseHG avec mercurial… Sous git, il existe bien tortoisegit, mais qui n'est dispo que sous Windows… mais sinon ça répond à tous tes critères.

    Au taf on essaye de convaincre les gens d'utiliser git, et l'absence d'interface graphique propre sous Linux est un gros gros frein :-/

    Autre interface : gitg, qui est un peu plus potable que gitk.

    • [^] # Re: tortoise ?

      Posté par  . Évalué à 2.

      Pour avoir utilisé tortoise, je ne sais pas comment ça marche avec mercurial, mais avec git les termes sont mal choisis.

      Ça a été fait pour pas perdre les utilisateurs historiques de tortoiseSVN. Et du coup, c’est àmha, le pire qu’on puisse utiliser. Le pire étant que quand on me demandait de l’aide, il y avait confusion entre le terme du menu et le concept sous jacent dans git.

      J’avais milité pour gitExtention à cause de ça.

      Sinon ça me fait penser que MsysGit vient avec une interface minimal qui ne m’avait pas semblé trop mal. C’est des souvenirs, ça fait au moins 2 ans que je n’ai plus touché à git sous windows.

  • # gitg

    Posté par  . Évalué à 2.

    Moi j'aime bien le cli, mais pour les cherry-pick tout ça, je préfère gitg :
    Une sorte de combo entre 'gitk' et 'git gui'. Et en plus ça tourne sous Windows aussi.

  • # git-cola

    Posté par  . Évalué à 2.

    Que reprochez-vous à git-cola ? Il est très pratique pour ajouter/supprimer des portions de fichiers avant de faire un commit (bien plus que des commandes comme git add -p).
    À mon sens, il est dédié à cette tâche. Si vous voulez faire plusieurs tâches, utilisez plusieurs outils.

  • # Résultat des courses

    Posté par  . Évalué à 3.

    Après moult outils testés, le grand vainqueur est… ha bah non, il n'y en a pas vraiment. Je n'ai pas trouvé d'outils fonctionnant correctement sur toutes les plateformes et avec tous les critères que je voulais. Du coup je pars sur deux outils : GitExtension sous Windows et Git-Cola sous Linux.
    Voilà le pourquoi :
    - GitExtension : plante sous Ubuntu et Debian, mais fonctionne parfaitement sous Windows.
    - Git-Cola : sous Windows il rame et je n'ai pas réussi à sauvegarder les préférences. sous Linux fonctionne parfaitement, il lui manquerait juste un indicateur du nombre de commits en attente de push.

    Les autres outils testés : Git Gui + Gitk, Git-Eye, Git-G, Giggle, Ungit, Cycligent, GitForce, GitLab sont soit simplistes, soit la licence n'est pas open-source, soit ils plantent. Mention spéciale à certain dont la licence est bien cachée (Git-Eye), voir introuvable (Cycligent).

    Les outils non testés : GitKraken, SourceTree, SmartGit, GitAhead, car leur licence est très claire : ce n'est pas de l'open-source.

    Merci à tous pour vos propositions.

    O.

  • # Atom

    Posté par  . Évalué à 2.

    L'éditeur Atom a un plugin git que je n'ai jamais utilisé, je peux difficilement me passer de la cli pour interagir avec git, mais il me semble qu'il est capable de faire des choses avancées.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.