什么是好用的源代码搜索引擎?

22

我所工作的代码库非常庞大,使用grep搜索需要约20分钟。我正在寻找一个好的基于web的源代码搜索引擎..像koders.com的企业内部版本。

我唯一发现的是Krugle Enterprise Edition,但它没有发布价格...如果你必须询问价格,那么你承受不起。

我真的更喜欢一个普通的搜索引擎,没有太多其他的花哨功能。

源代码主要是ASP.NET/C#和Javascript。


你能解释一下确切的目标是什么吗?例如,您自己的代码SourceForge,还是需要一个扩展的查看器?主要用途是搜索/ grep 吗?您期望“找到”什么?我简要地查看了 Coders,但无法真正想象出公司使用案例,因此提出了这个问题。 - Till
你的代码库存储在哪里?如果每个人都有一个已检出的本地副本(这应该是现代版本控制系统中的常态),那么速度应该很快。如果你正在使用NFS,你只能以你的局域网传输速度搜索整个代码库。 - David Thornley
@David:如果你坚持在搜索时阅读每个文件的文本,那么会很慢。如果你先对文件进行索引,就不需要扫描文本,速度会快得多。请看我的回答。 - Ira Baxter
你可以看一下一个叫做http://www.elasticsearch.org/的产品,它是一个更通用的可扩展搜索引擎,也可能成为一个相当不错的源代码搜索解决方案。 - Norman H
您可能还注意到,Krugle有一个非常明确的免费版本,可以索引高达1GB的源代码。看起来1GB应该能让大多数小团队忙碌一段时间! :-) - Norman H
11个回答

-1

也许你应该花些时间和/或金钱投资于支持符号标记的编辑器或IDE。你只需要通过整个源代码树进行一次标记,之后编辑器就可以使用索引搜索或映射查找符号定义或引用。

一些支持标记的编辑器或IDE的例子包括Eclipse、Visual Studio、SlickEdit。有些IDE可能会将此功能称为符号浏览器或类似名称。


这种方法能用于未编译的代码吗,比如ASPX或JavaScript文件?代码注释可被搜索吗?我们确实需要全文检索。 - toohool
哇,4.3年过去了还在收到负评。如果我今天写这个答案,我会改变语气。现在重新阅读原来的回答,感觉有点说教。 - shoover
最近我使用Sublime Text,它拥有我过去一年中使用的每种语言的语法高亮器(Java,Groovy,Clojure,Javascript,CSS,Haskell,R),以及一个庞大的用户和插件开发者社区。它还可以突出显示ASP,而且有人友好地提供了对ASPX的调整。全文搜索(是的,包括注释)非常快速,您可以在编辑器内搜索多个项目。我与ST没有任何关联;我只是一个快乐的付费客户。 - shoover

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接