机器之心报道

机器之心编辑部

18 个月后,GitHub 终于宣告向所有用户开放全新的代码查找引擎。

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

作为全球最大的源代码保管服务渠道,2021 年 GitHub 发布代码查找引擎 Code Search 预览版,之后 GitHub 又对 Code Search 进行了一系列的优化修改,并在本年 2 月发布了技术细节。

现在,GitHub 宣告所有用户都能够运用全新的代码查找(code search)引擎和代码视图(code view),旨在让开发人员能够快速查找、导航和理解代码,最终进步工作效率。

具体来说,GitHub 推出了一个彻底从头设计的查找界面。新界面不仅提供建议与补全,还能对查找结果进行智能分类。

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

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

此外,研制团队还从头设计了 GitHub 的代码视图,将查找、浏览和代码导航紧密集成起来。

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

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

修正 bug

**
**

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

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

图片

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

查找装备文件

**
**

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

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

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

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

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

网友怎么看

**
**

GitHub 全新的代码查找正式上线后,有网友大赞其功用,称这是 5 年来最令人形象深入的产品,优秀到可与 ChatGPT 比美。

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

还有人表明 GitHub 的代码查找功用比 Copilot 或任何大型言语模型(LLM)都有用得多。

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

但也有一些网友表明,曾经的 GitHub 查找效果很差,更多的时候他们习惯于运用 git-grep。

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

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

参阅链接:github.blog/2023-05-08-…