Gitextensions: Demande de fonctionnalité : vue arborescente des branches

Créé le 27 juil. 2011  ·  29Commentaires  ·  Source: gitextensions/gitextensions

Ce serait bien d'avoir une arborescence des branches locales et distantes pour pouvoir en cacher certaines. Dans notre référentiel, nous avons des branches nommées comme :
topic/[module_name]/[task_no], public/[user_id]/[whatever] et la possibilité de masquer ou d'afficher certaines branches seraient très utiles.
La configuration de l'arborescence peut être enregistrée dans le sous-répertoire .git pour pouvoir voir différentes branches dans différents référentiels.
L'arborescence pourrait avoir des cases à cocher pour afficher/masquer certaines branches et cliquer sur la feuille pourrait sauter à la branche sélectionnée sur le graphique de révision.

J'ai vu une fonctionnalité similaire dans certaines interfaces utilisateur git pour MAC et cela a été très utile.

user experience feature request

Tous les 29 commentaires

Quelque chose comme ca
Tower
Vérifiez une autre capture d'écran ici http://www.git-tower.com/

+1 pour un volet de navigation comme indiqué ci-dessus. Pour moi, ce serait génial de faire un clic gauche sur une branche ou un tag et de voir la grille principale déplacer la sélection du commit correspondant.

J'ai commencé un travail là-dessus.

Toute entrée est souhaitée.

@bergerjac J'ai regardé ton travail. Il semble essayer de modéliser la disposition complète de la tour git (en particulier le contrôle de l'onglet Status / Commits / Browse). Je pense qu'il est plus facile de se concentrer d'abord sur le panneau des branches / balises, etc. sur le côté gauche, ce qui s'intègre facilement dans la disposition actuelle de l'interface utilisateur GitExt (on pourrait ajouter un nouveau bouton similaire à "Basculer la disposition de la vue fractionnée" pour afficher ou masquer le panneau).

Remarques supplémentaires:

  • clic gauche sur un arbre vérifie la branche tout de suite. C'est trop d'action à mon goût. Normalement, un clic gauche sélectionne un élément. Je voudrais sauf le clic gauche pour sélectionner la branche dans la grille principale (voir commentaire ci-dessus). Le paiement peut être effectué via un clic droit comme vous l'avez déjà implémenté.
  • Pourquoi utilisez-vous une arborescence personnalisée ? Personnellement, je me sens assez à l'aise avec TreeView intégré dans Winforms. Cela vous permettrait également de faire défiler gratuitement si la liste est longue :). Exemple d'utilisation du TreeView ici : https://github.com/feinstaub/gitextensions/commits/topic_tree_in_settings_dialog

@bergerjac Je pense que le panneau de gauche sera très utile dans GitEx, mais je ne pense pas que nous devrions cloner des onglets dans la fenêtre principale comme dans GitTower.
Je pense que nous avons une bonne fenêtre de validation au lieu de l'onglet Statut et du contenu de l'onglet Parcourir déjà affiché dans la fenêtre principale.

Il semble essayer de modéliser la disposition complète de la tour git (en particulier le contrôle de l'onglet Status / Commits / Browse).

Pour le prototype, j'ai juste pris leur mise en page générale et l'ai converti en WinForms. Certainement pas la mise en page finale.

un clic gauche sur un arbre vérifie la branche tout de suite

C'était pour un prototypage rapide. (Je voulais utiliser DoubleClick, mais cela ne fonctionne pas comme un événement Button standard.)

Pourquoi utilisez-vous une arborescence personnalisée ?

Principalement pour avoir une vue plus personnalisée (par exemple, les en-têtes et l'espacement). Cependant, je pense que vous faites valoir que WinForms TreeView fournira d'excellentes fonctionnalités.

Je pense que le panneau de gauche sera très utile dans GitEx, mais je ne pense pas que nous devrions cloner des onglets dans la fenêtre principale comme dans GitTower.
Je pense que nous avons une bonne fenêtre de validation au lieu de l'onglet Statut et du contenu de l'onglet Parcourir déjà affiché dans la fenêtre principale.

Bons points.

Alors, pensez-vous qu'il vaudrait la peine d'implémenter un panneau de gauche avec ce qui suit :

  • Branches, Tags, Télécommandes, ? Cachettes ?, ??
  • Basculer la disposition de la vue fractionnée
  • Arborescence WinForms standard
  • menus contextuels
  • double-cliquez sur une branche pour vérifier la branche
  • double-cliquez sur une réserve pour l'appliquer à la réserve

Branches, Tags, Télécommandes, ? Cachettes ?, ??

et sous-modules

Les branches et les balises doivent prendre en charge la disposition en arborescence pour les noms avec /, comme dev/shopping_cart dans la capture d'écran

BTW, la plupart des clients Git pour Mac ont ce panneau de gauche :

+1 pour la fonction de double-clic (les autres sont bien aussi)

les progrès peuvent être suivis ici (sur la branche _left-panel/-main_).

Comme indiqué dans le README, je ne suis pas fan des _Tags_ et des _Submodules_, donc un autre contributeur pourrait accélérer ces parties (ou tout aperçu de l'UX).

Il a déjà l'air très sympa ! Bon travail!

La mise à jour a l'air géniale. J'aime aussi le nombre d'éléments entre parenthèses des étiquettes de nœud de nœud.

Impressionnant! Cela fonctionnera-t-il en mono ? je vais le tester

Bon travail!

Impressionnant. Cela rendrait également le #1285 sur le filtrage des branches obsolète.

mettre à jour

La majeure partie du cadre pour les télécommandes est terminée.

Il reste BEAUCOUP de petites choses à faire ( problèmes GitHub , codes TODO et NotImplementedException ). Cependant, je ne peux pas continuer au rythme auquel j'allais autrefois.

Je vais passer à d'autres projets.

Cela étant dit, je pense avoir créé une base solide pour ce que GitEx pourrait devenir (avec le panneau de gauche). Malheureusement, je n'ai pas pu implémenter une interface utilisateur de base pour les notifications ; cependant, les structures et la logique de classe ont un bon départ. Les branches _left-panel_ sont définitivement dans un état de bifurcation. (Je pense que les cours sont bien conçus et bien commentés.)

@KindDragon c'est intéressant. Une chose qui pourrait différencier GitEx (en plus du support Linux) est la mise en œuvre des glisser-déposer et des actions contextuelles. SourceTree (v0.9.0.5) ne prend actuellement PAS en charge le glisser-déposer pour ses nœuds.

Pourriez-vous pousser les modifications apportées au sous-module GitExtensionsTest ? Il manque le commit 7712ba92e36702e29f5a7313e94b4c8cb802fbbf.

+1

+1

+1

Regardez la branche du panneau de gauche

Le lundi 28 septembre 2015 à 8 h 52, EbenZhang [email protected] a écrit :

+1


Répondez directement à cet e-mail ou consultez-le sur GitHub
https://github.com/gitextensions/gitextensions/issues/538#issuecomment -143736057
.

Pardon. J'ai pensé qu'il s'agissait d'un nouveau problème à partir de mon e-mail.

+1

+1

Si quelqu'un veut faire un essai, j'ai ici une version pour le panneau d'arbre de gauche.

image

Testé (en fait même travaillé) avec la version de @EbenZhang depuis un certain temps déjà (ma version actuelle est une fusion entre la sienne et la mienne basée sur master). Le panneau de gauche est assez stable, recommande totalement sa mise en œuvre.

Cette page vous a été utile?
0 / 5 - 0 notes