GUI为VCS用户提供了哪些优势?

时间:2012-05-31 05:47:14

标签: git user-interface version-control

我将在几周内向一群科学家发表演讲,将他们介绍给VCS(或者试图激励他们为已经知道的人使用VCS)。我担心的一件事是当他们习惯使用GUI时,用一堆命令行工具吓跑人们。所以我试图通过命令行工具来考虑GUI为VCS用户提供的优势,但我真的想不到很多。

除了显而易见的“留在舒适区域内”之外,还有什么优点,比如使用鼠标而不必记住命令?

一般答案都很好,但也欢迎特定于特定VCS或GUI的答案(我将使用git作为主要示例发表演讲)。

2 个答案:

答案 0 :(得分:3)

我沉迷于命令行,但我发现提交历史的GUI表示比git log --graph更直观。 GUI允许用户直接从历史视图分析和操作存储库,这比复制/粘贴哈希更容易,或从HEAD计数,或找到正确的管道命令等.GUI还为用户提供了更好的配置设置界面。 (我已经忘记了多少次我搞砸了一个设置,因为我没有逃脱引号或什么的。)

你提到不必记住命令并留在舒适区内,但我认为对于像Git这样复杂的工具来说,这些是非常重要的。有数以万计的Git命令,有数以万计的选项,有些但不是全部适用于多个命令(--dry-run,任何人?),有些但不是全部使用不同的格式(-n 1 vs 。-1?)。对于大多数用户来说,点击一个按钮,就像他们使用的每个其他程序一样,比浏览git help时更加直观和方便,因为您无法记住是否应该使用master..origin/master或{ {1}}或master origin/master。 (作为一个极客,浏览origin master是我乐趣的一部分,但对于任何使用GUI的工作伙伴来说都不行。他们认识到Git简化了他们的工作流程,但他们并没有; t想要对工具本身投入很多精力。他们只是想完成工作。)

答案 1 :(得分:1)

好吧,'我'认为:

1)命令行不提供任何“预防性控制”, 2)命令行不能通过仅提出可在特定情况下执行的有限命令集来引导用户。好吧,不如GUI那么好。

两个极端类比来解释:

你能想象通过一堆命令行飞机吗?它在技术上应该是可能的,但是如果没有驾驶舱及其监控工具实时为您提供 - 并且无需您要求 - 您需要试用的任何相关信息,很容易想象它会变得更加困难。飞机驾驶舱等Guis为您提供预防性控制。它们甚至可以为您提供您无法想象存在的信息,因为您之前从未听说过等效的命令行。

在城市或沙漠中驾车时,您是否觉得更加舒适?在第一种情况下,路标会给你一些关于你要去的地方的指示,而且由于道路是道路,你无论如何都选择了有限的方式。同样地,GUI充当一组原子命令行的外观,将它们重新组合在单个和相干的高级操作中,在菜单中描述为路标。在第二种情况下,您几乎可以去任何地方 - 可能是在错误的方向 - 并且您必须自己追踪您的方式,安排自己的检查点。这与命令行相同。

我认为这些想法也与VCS相关。