5

它还应该支持初学者的 SSH2 和公钥身份验证。其次在 Mac/Windows 上它应该有一个不错的安装程序。

4

3 回答 3

10

截至 2011 年...

这是一个老问题,但仍然非常相关。在过去的几年里,我不得不使用几乎所有版本控制系统在各种平台上开展项目。虽然最终我发现没有什么比熟悉命令行更安全和方便,但现实情况是,一个像样的 GUI 确实有助于可视化,一个非常好的 GUI 可以帮助您避免犯愚蠢的错误。

我一直试图充分利用开源产品,但有时你会开始欣赏产品中的一些额外修饰,因为你 (a) 累了,真的只想专注于推出自己的产品门和(b)您厌倦了向更多初级团队成员解释事情,因此只希望工具体验尽可能顺利和无故障。

在着手开发我们自己的 iPhone 应用程序时,我们最初选择了SourceTree,因为它是一个出色的 GUI,而且它还支持我喜欢的 Mercurial。在我看来,SourceTree 物有所值,您不会后悔使用它。

然而,在一个跨平台项目中,他领导的团队包括从初级到非常有经验的开发人员的一系列经验,该项目涉及...

  • iOS(Mac OS X 上的 XCode)
  • Windows Azure 和 ASP.NET 后端(Windows 上的 Visual Studio)

...不得不在 Mac 上的 SourceTree 和 Windows 上的 TortoiseGit 之间进行单独的配置设置并进行心理转换变得令人沮丧。

然后我们发现了SmartGit。天哪,天哪,我喜欢 SmartGit。

SmartGit 的价格为 70 美元,但我相信它对于提高生产力和为大多数团队成员节省的麻烦来说是非常值得的。它是一个出色的 Git 客户端,具有非常流畅、优美的 UI,它有自己的优点,已经成为我的最爱——但是当你考虑到它在 Windows/Mac/Linux 上运行的事实时,团队的价值主张就会增加成倍增长。我们爱爱爱,不必为不同的平台使用不同的客户端。

与我用于 Git 的任何其他 GUI 工具相比,SmartGit 有一个杀手级功能。我们大量使用 Git 子模块。如果您不知道或不使用子模块,那么这不适用于您。但是如果你这样做了,那么你就会明白 SmartGit 是如何做到的。我用过的其他 GUI Git 工具都没有。

警告:

  1. 我们在使用 TortoiseGit 使用 RSA 私钥初始化的 repo 时遇到了麻烦。SmartGit 可以使用系统 ssh 或它自己内置的需要 OpenSSH 私钥的 ssh 客户端。由于我们使用 GitHub 作为我们的远程存储库,我们刚刚切换到使用 HTTPS URL 作为存储库,一切都很好。但是,要让它在 Mac 上与 Xcode 或 MonoDevelop 一起工作,只需确保为密钥生成 DSA 而不是 RSA。
  2. SmartGit 使使用子模块变得非常容易,但它似乎没有做的一件事是自动初始化嵌套的子模块。换句话说,如果您的子模块本身引用了其他子模块,则您必须右键单击每个视图以单独初始化。

然而,最终,我认为像 SmartGit 这样一流的跨平台 Git GUI 工具现在没有任何真正的竞争。

如果您想查看我对 OS X 的两个最佳 Git GUI 工具的比较,请阅读此答案

于 2011-05-19T18:25:46.327 回答
3

我刚刚开始使用qgit,它看起来很不错。我通过MacPorts将它安装在我的 Mac 上,有一个 Windows 安装程序(我还没有尝试过),我相信它也很容易用于 Linux。

于 2008-09-19T15:28:32.673 回答
0

另一个合理的解决方案应该是git-gui,它需要安装一个 Tcl/Tk 框架。

于 2008-09-19T19:14:00.353 回答