我所工作的代码库非常庞大,使用grep搜索需要约20分钟。我正在寻找一个好的基于web的源代码搜索引擎..像koders.com的企业内部版本。
我唯一发现的是Krugle Enterprise Edition,但它没有发布价格...如果你必须询问价格,那么你承受不起。
我真的更喜欢一个普通的搜索引擎,没有太多其他的花哨功能。
源代码主要是ASP.NET/C#和Javascript。
我所工作的代码库非常庞大,使用grep搜索需要约20分钟。我正在寻找一个好的基于web的源代码搜索引擎..像koders.com的企业内部版本。
我唯一发现的是Krugle Enterprise Edition,但它没有发布价格...如果你必须询问价格,那么你承受不起。
我真的更喜欢一个普通的搜索引擎,没有太多其他的花哨功能。
源代码主要是ASP.NET/C#和Javascript。
20分钟太长了!我现在正在处理一个超过一百万行的源代码库,使用 ack 进行 grep 操作最多只需要几秒钟。我们的家目录存储在文件服务器上,并通过 NFS 挂载,为了加速 grep 操作,我们在文件服务器上登录执行。我不确定通过 NFS 需要多长时间,但肯定更长。
出于同样的性能原因,我们也会在文件服务器上登录执行源代码控制操作。
我以前使用过OpenGrok,感觉还不错。 另一个选择是:
Gonzui http://gonzui.sourceforge.net/screenshots.html
(来源:sourceforge.net)
既然你说“grepping”,我想你对命令行解决方案并不反感。
像ctags这样的工具可以索引和搜索C#和JavaScript代码库(以及许多其他语言)。
ctags非常棒的一点是它可以与vim结合使用,可以使用taglist插件进行源代码浏览,或者使用vim omnicomplete启用代码完成功能。
请查看我们的SD源代码搜索引擎。它能够识别多种语言(C、C++、C#、Java、ObjectiveC、PHP、VB.net、VB6、Ada、Fortran、COBOL等),并且具有语言感知功能。在Linux内核(730万行,18000多个文件)中进行搜索只需要2.8秒。
由于它具有语言感知功能,因此可以忽略与您的搜索无关的语言元素(例如,如果您只对标识符或表达式感兴趣,则可以忽略注释、格式和空格)。它可以搜索标识符、字符串和注释。如果您确实想这样做,它还具有完整的正则表达式字符串搜索选项。
它已被用于数千万行代码的系统中,并且在我们所知道的一个案例中,它被用于拥有超过一百万个文件的系统中。
我曾经遇到过类似的问题。我在一家软件公司工作,项目涉及c#、c ++、asp.net、db脚本甚至vb6源代码(是的,在没有解决方案概念的情况下编译多个vb6项目确实很头疼...)
我一直在使用Visual Studio 2010,但必须使用第三方文本编辑器来搜索db脚本和vb6源代码。
我做了一些研究,发现了KodeEx(http://kodeex.com),并对其感到满意。它是一种基于索引的源代码搜索工具。您不需要构建任何东西(就像其他人建议您使用Lucene一样。顺便说一句,Lucene是一个不错的开源项目=))。只需安装它并让它索引您的项目。之后,它通常会在几秒钟内返回结果。