FishEye可以做些什么,我们无法从git存储库的其他工具中获得?

2022-09-03 12:25:35

我们已经决定使用Jira和Confluence,现在正在研究其他可能使我们的生活更轻松的Atlassian工具。

据我所知,FishEye允许对源代码存储库进行各种可视化,而CVS的本机工具则不允许。但是,我们已经迁移到git,它拥有一个由非常有用的工具组成的大型生态系统。

问题是:FishEye能告诉我们一些我们从原生工具中无法获得的有用东西吗?(或具有竞争力价格的商业工具)?


答案 1

就我个人而言,我喜欢Fisheye,但这给了一个中型开发环境和一个半复杂的分支/开发策略,其中监控存储库的当前状态非常重要。

在我的上一份工作中,我们的主要产品是一系列服务器端Java,白盒SaaS产品,其中所有计费和系统集成都在内部处理。虽然大多数人都是Emacs/命令行黑客,但我们仍然在所有主要产品线之上使用Fisheye。

警告

  • 这是使用SVN,而不是git / hg,所以请谨慎对待它。
  • 还有其他SVN钩子是内置的,涉及Bugzilla,我不是100%确定它们是如何工作的

重新改组的工程师在没有Fisheye的产品上工作通常不高兴,原因如下:

  • 重构通常,您正在移动文件,重命名,合并相关更改等。Fisheye按基本名称搜索将返回早已被删除并保留其历史记录的文件,因此即使您弄乱了存储库中的历史记录,您也能了解以前的更改是什么。对于一个代码库来说,由于突然扩展到公司而经历了一些非常真实的成长痛苦,这是一个巨大的帮助。

  • 代码所有权/审查即使没有强大的代码所有权/审查流程,您也可以使用Fisheye选择加入特定的项目/存储库更改。对于团队领导等,这是一种非常简单的方法,可以掌握其他人在更改内容时正在执行的操作以及原因,无论您是要接收垃圾邮件还是为存储库设置RSS源。如果您一次管理多个项目,这可能是一件大事。我为我的第一个主要项目设置了一个RSS提要,所以我可以看到它是如何变化的,但真正的好处是监控与API相关的项目的变化。

  • 可用并非所有的工程师都是命令行黑客。对于一些处理HTML / CSS的前端工程师来说尤其如此。尽管有些人倾向于在可能的情况下回退到命令行工具,执行普通的文件差异和“谁在何时还原了我的更改?”,但处理浏览器内差异工具比执行“svn blame”等更容易。

总而言之,我会说,如果我从头开始做一个开发商店,我根本不会碰它,除非我需要整个项目的可视化,而不是不时地一两个特定的文件,这可能意味着以下事情是正确的:

  • 我的团队规模大约达到10多名工程师,他们可能具有非技术背景,并且需要或从临时战略中重组
  • 分支/标记与常规版本控制一样满足许多特定需求
  • 代码所有权和审查至少是一个松散执行的想法,而不是由于资源限制而对它的强硬立场。
  • 工程师之间的沟通是一个日益严重的问题(无论是纯粹的噪音,还是缺乏噪音)。这包括从随意的对话到直接的文档

我也忽略了任何分析/工具集成。部分原因是我认为,如果你将Fisheye与其他任何东西进行比较,你也应该考虑维护Fisheye与另一种解决方案与翅膀需要多少额外的工作,但也因为我从未同时使用过多个Atlassian产品。

在您的情况下,我还会查看Jira / Fisheye集成部分,看看在查看其他商业选项时,您目前(或根本)是否需要此功能集。


答案 2

我们从使用FishEye中获得的主要好处之一是在Crucible上分层,从而促进远程代码审查。


推荐