Gitextensions: 功能请求:分支树视图

创建于 2011-07-27  ·  29评论  ·  资料来源: gitextensions/gitextensions

拥有本地和远程分支的树视图以便能够隐藏其中的一些分支会很好。 在我们的存储库中,我们有分支,名称如下:
topic/[module_name]/[task_no]、public/[user_id]/[whatever] 以及隐藏或显示某些分支的能力将非常有帮助。
树配置可以保存在 .git 子目录中,以便能够查看不同存储库中的不同分支。
树可以有复选框来显示/隐藏一些分支,单击叶子可以跳转到修订图上的选定分支。

我在一些用于 MAC 的 git UI 中看到了类似的功能,它非常有帮助。

user experience feature request

所有29条评论

类似的东西
Tower
在此处查看另一个屏幕截图http://www.git-tower.com/

+1 用于导航窗格,如上所示。 对我来说,左键单击分支或标签并查看主网格将选择移动到相应的提交将是一个巨大的胜利。

我已经开始了一些工作

需要任何输入。

@bergerjac我检查了你的工作。 它看起来试图模拟完整的 git-tower 布局(尤其是状态/提交/浏览选项卡控件)。 我认为首先关注左侧的分支/标签等面板更容易,这很容易适应当前的 GitExt UI 布局(可以添加一个类似于“切换拆分视图布局”的新按钮来显示或隐藏控制板)。

补充说明:

  • 左键单击一棵树,立即检出树枝。 这对我的口味来说太多了。 通常左键单击选择一个项目。 除了左键单击以选择主网格中的分支外,我会(请参阅上面的评论)。 结帐可以通过右键单击完成,因为您已经实现了它。
  • 为什么要使用定制的树形视图? 就我个人而言,我对 Winforms 中内置的 TreeView 感觉很舒服。 如果列表很大,这也可以让您免费滚动:)。 TreeView 的示例用法: https ://github.com/feinstaub/gitextensions/commits/topic_tree_in_settings_dialog

@bergerjac我认为左面板在 GitEx 中将非常有用,但我认为我们不应该像在 GitTower 中那样在主窗口中克隆选项卡。
我认为我们有很好的提交窗口而不是状态选项卡,并且浏览选项卡中的内容已经显示在主窗口中。

它看起来试图模拟完整的 git-tower 布局(尤其是状态/提交/浏览选项卡控件)。

对于原型,我只是采用了他们的总体布局并将其转换为 WinForms。 无论如何,不​​是最终的布局。

左键单击一棵树立即检查分支

这是为了快速制作原型。 (想使用 DoubleClick,但它不能作为标准的 Button 事件。)

为什么要使用定制的树形视图?

主要是为了有一个更自定义的视图(例如标题和间距)。 但是,我认为您提出了一个很好的观点,即 WinForms TreeView 将提供强大的功能。

我认为左侧面板在 GitEx 中将非常有用,但我认为我们不应该像在 GitTower 中那样在主窗口中克隆选项卡。
我认为我们有很好的提交窗口而不是状态选项卡,并且浏览选项卡中的内容已经显示在主窗口中。

好点。

那么,你们认为使用以下内容实现左侧面板是否值得:

  • 分支、标签、遥控器、?Stashes?、??
  • 切换拆分视图布局
  • 标准 WinForms 树视图
  • 上下文菜单
  • 双击一个分支以检出该分支
  • 双击一个存储以应用到该存储

分支、标签、遥控器、?Stashes?、??

和子模块

分支和标签应支持带有 / 的名称的树布局,如屏幕截图中的 dev/shopping_cart

顺便说一句,大多数 Mac 的 Git 客户端都有左侧面板:

双击功能+1(其他也很好)

可以在此处跟踪进度(在 _left-panel/-main_ 分支上)。

如 README 中所述,我不喜欢 _Tags_ 和 _Submodules_,因此另一个贡献者可以加快这些部分(或任何对 UX 的洞察)。

它看起来已经很不错了! 干得好!

更新看起来很棒。 我也喜欢节点节点标签括号中的项目计数。

惊人的! 这适用于单声道吗? 我会测试它

干得好!

惊人的。 这也会使关于过滤分支的#1285 过时。

更新

Remotes 的大部分框架都是完整的。

还有很多小事情需要完成( GitHub 问题代码 TODONotImplementedException )。 但是,我无法以我曾经的速度继续前进。

我将继续进行其他项目。

话虽如此,我认为我已经为 GitEx 的发展奠定了坚实的基础(使用左面板)。 不幸的是,我无法实现通知的基本 UI; 但是,类结构和逻辑有一个良好的开端。 _left-panel_ 分支肯定处于可分叉状态。 (我觉得这些课程设计得很好,评论也很详尽。)

@KindDragon这很有趣。 可以让 GitEx 与众不同的一件事(除了 Linux 支持)是实现拖放和上下文操作。 SourceTree (v0.9.0.5) 目前不支持其节点的拖放。

你能推送对 GitExtensionsTest 子模块所做的更改吗? 缺少提交 7712ba92e36702e29f5a7313e94b4c8cb802fbbf。

+1

+1

+1

查看左侧面板分支

2015 年 9 月 28 日星期一上午 8:52 EbenZhang [email protected]写道:

+1


直接回复此邮件或在 GitHub 上查看
https://github.com/gitextensions/gitextensions/issues/538#issuecomment -143736057
.

对不起。认为这是我电子邮件中的一个新问题。

+1

+1

如果有人想试用,我在这里发布了左侧树面板的版本。

image

已经使用@EbenZhang的版本测试(实际上甚至工作)了一段时间(我的实际版本是他和我自己基于 master 的合并)。 左面板相当稳定,完全推荐他的实现。

此页面是否有帮助?
0 / 5 - 0 等级