Sourcegraph:面向开源开发者的免费代码搜索工具

还没有读者喜欢这篇文章。
Grasshopper outside with graph overlay

由 Jen Wike Huger 修改,CC BY-SA

程序员可以利用大量的开源代码,但选择合适的库并理解如何使用它可能很棘手。Sourcegraph 创建了一个搜索引擎和代码浏览器,以帮助开发者找到更好的代码并更快地构建软件。

Sourcegraph 是一款代码搜索引擎和浏览工具,它对网络上所有可用的开源代码进行语义索引。您可以按仓库、包或函数搜索代码,并单击完全链接的代码以阅读文档、跳转到定义并立即查找用法示例。所有这些都可以在您的 Web 浏览器中完成,而无需配置任何编辑器插件。

Sourcegraph 由两位斯坦福大学毕业生 Quinn Slack 和 Beyang Liu 创建,他们在花费数小时搜索文档不完善的代码后,决定构建一个工具来帮助他们更好地阅读和理解代码。

尝试点击来自 Docker 的代码片段,Docker 是一个流行的开源容器库。

您是仓库作者吗?

如果您是开源项目或库的作者,您应该在 Sourcegraph 上启用您的仓库。启用您的仓库会告知 Sourcegraph 分析和索引您的代码,以便您的库的贡献者和用户可以在 Sourcegraph 上搜索和浏览代码。这些功能可以通过让用户快速查找和理解代码片段来帮助他们节省时间。一个好的用法示例胜过千言万语的文档。对于开源项目,启用仓库是免费的,并且永远免费。

针对项目、函数或包的语义搜索

Sourcegraph 在语义级别索引代码,这意味着它像编译器一样解析和理解代码。这对于支持语义搜索和查找用法示例等功能是必要的。Sourcegraph 目前支持 Go、Java 和 Python,JavaScript、Ruby 和 Haskell 处于 Beta 测试阶段。

尝试搜索流行的项目,如 DockerAWS Java SDKKubernetesredis-py,或您自己的项目。

交互式代码片段

从 Sourcegraph 的 UI 中,您可以快速有效地浏览开源库。但有时,您想在该界面之外共享代码。例如,您可能想在博客文章或论坛问题的答案中嵌入代码片段。Sourcegraph 允许您使用 Sourceboxes 嵌入可点击的交互式代码片段。这是一个例子

上面的代码片段是交互式的。尝试单击函数调用和类型引用。直接链接到用法示例。.

开源是其核心

Sourcegraph 的核心分析库是开源的,并作为一个易于使用的库 srclib(发音为“Source Lib”)提供。srclib 为您在 Sourcegraph.com 上看到的所有语义分析功能提供支持,并且还支持提供跳转到定义和其他语义感知功能的编辑器插件。

试用一下,让我们知道您的想法。您可以通过 电子邮件 或在 Twitter 上联系我们:@srcgraph。我们创建 Sourcegraph 是为了解决我们作为程序员在阅读代码时每天感受到的痛点。我们希望您觉得它有用,我们很乐意听取您的想法和建议。

标签
User profile image.
Charles Vickery 是 @srcgraph 的社区经理和联合创始人。在 Sourcegraph 之外,Charles 是一位 DJ、歌剧演唱家和越野自行车运动员。在 Twitter 上关注他:@charles_vickery。

4 条评论

Je ne connais pas le produit je test et je vous dit ce que j'en pense

关于一个伟大工具的精彩文章。使用此工具搜索互联网上的代码片段变得更加容易。

很棒的工具

非常好的工具。我认为它对我以及所有开发者都非常有用。我希望尽快支持 c#。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.