正式上线,GitHub向所有用户开放全新代码搜索引擎

在软件开发的过程中,阅读和理解代码是一项基础工作。无论是实现新功能,还是查找 bug,开发人员首先要阅读和理解代码,这个时间甚至多于编写代码。如果能够像搜索引擎一样,快速找到开发需要的上下文代码,那么软件开发的效率将会大幅提升。

作为全球最大的源代码托管服务平台,2021 年 GitHub 发布代码搜索引擎 Code Search 预览版,之后 GitHub 又对 Code Search 进行了一系列的优化修改,并在今年 2 月公布了技术细节。

现在,GitHub 宣布所有用户都可以使用全新的代码搜索(code search)引擎和代码视图(code view),旨在让开发人员能够快速搜索、导航和理解代码,最终提高工作效率。

具体来说,GitHub 推出了一个完全重新设计的搜索界面。新界面不仅提供建议与补全,还能对搜索结果进行智能分类。

20230725183235b587cb568a9c4302e45196886e1ffba3af12be691

这基于 GitHub 从头开始构建的全新代码搜索引擎,该引擎的特点是速度更快(大约是旧代码搜索速度的两倍),功能更强大(支持子字符串(substring)查询、正则表达式搜索和符号搜索),并具备一定的代码理解能力,能将最相关的结果放在首位。

此外,研发团队还重新设计了 GitHub 的代码视图,将搜索、浏览和代码导航紧密集成起来。

2023072518314355814bf71dba90e3182068409a49ffa3675310299

我们来看一下改进之后,GitHub 的应用效果。

修复 bug

修复 bug 是软件开发中最常遇到的工作情况之一。在修复之前,开发者们首先要找到 bug 在哪。一个大型软件或项目通常具有多个系统或存储,如果没有代码搜索,开发者就不得不克隆一堆存储库并使用 grep 遍历它们。现在借助 GitHub 的代码搜索功能,开发者可以在大量代码中进行快速查找:

20230725183236f5beda51425f0e1058c1751e4398925f6b26dd940

20230725183144158af00624e6d27629b27315e46c762a8710b8716

2023072518314463ffabf90a807f31c1198047f5ace6b4e2c92f466

查找配置文件

在实际开发中,项目配置往往是硬性限制条件。GitHub 现在为开发者提供查找配置文件的功能。例如,在代码中搜索包含「内存(memory)」一词的 YAML 配置文件,就能查看一些内存占用情况:

20230725183146b3e9e77713e2167073b01468c495be2decb59e571

这种查询功能对于开发中的资源规划与分配至关重要。

此外,GitHub 还制定了一些避免安全漏洞的规则,例如禁止使用 dangerouslySetInnerHTML 将危险的字符串注入 DOM。

20230725183147c30596b82c851401e7f8844feab450b9409884901

网友怎么看

GitHub 全新的代码搜索正式上线后,有网友大赞其功能,称这是 5 年来最令人印象深刻的产品,优秀到可与 ChatGPT 媲美。

202307251831470882622447a7f9eaf9e1811217b0b050d0ad2f383

还有人表示 GitHub 的代码搜索功能比 Copilot 或任何大型语言模型(LLM)都有用得多。

20230725183147482460178d165273ad1209d8c57481de6030fb531

但也有一些网友表示,以前的 GitHub 搜索效果很差,更多的时候他们习惯于使用 git-grep。

20230725183147a972ba7491b3f54017e02261d01b7c4e7aaf61535

看来,全新的 GitHub 代码搜索需要开发者们自己尝试一下,才知道好不好用。

© 版权声明

相关文章