50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

GitHub 全新代码搜索引擎正式上线,但用户对新产品“不买账”

  • 2023-05-13
    北京
  • 本文字数:1404 字

    阅读完需:约 5 分钟

GitHub 全新代码搜索引擎正式上线,但用户对新产品“不买账”

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


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

 

但是 GitHub 上可供搜索的代码浩如烟海,全球代码仓库已经超过 2 亿,并且这些代码不是静态的:它在不断变化,这就给代码搜索引擎带来了相当大的挑战。

 

上线 15 年来,GitHub 一直努力给大家提供一个好用的代码搜索引擎,但一直不能如愿。因为之前的代码搜索基于 Elasticsearch,但代码搜索与一般文本搜索有着很大的区别,毕竟代码是写给机器来理解的,需要利用代码之间的结构和相关性,并且还需要支持正则表达式进行搜索。

 

从 2020 年开始,GitHub 开始全力以赴构建自定义搜索引擎。这款代码搜索引擎被命名为 Blackbird,用 Rust 编写,它创建并增量维护一个由 Git blob 对象 ID 分片的代码搜索索引。增量的形式能节省大量存储空间,并保证了跨分片的均匀负载分布。同时支持对文档内容进行正则表达式搜索,还可以捕获额外的元数据,例如它还维护符号定义的索引。最终 Blackbird 满足了大家的性能目标:速度非常快,索引也非常紧凑,重量约为(去重)语料库大小的 1/3。

 

该代码搜索引擎于 2021 年底推出预览版,这周,GitHub 宣布其“普遍可用”。

 

除代码搜索引擎是全新的之外,GitHub 还推出了一个完全重新设计的搜索界面。新界面不仅提供建议与补全,还能对搜索结果进行智能分类。

 


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

 


GitHub 全新的代码搜索正式上线后,有网友大赞其功能:“这是 5 年来最令人印象深刻的产品”,“很高兴能够在代码搜索中包含特殊字符!”

 

但不幸的是,也有不少用户给出了“不满意的”的反馈,要求有一种方法可以返回到旧版本。

 

CameronEnglish:“新的查看体验缓慢而糟糕。我并不真正关心新的代码搜索功能,因为我已经有了相关工具。视图更改极大地恶化了 Github 的体验。”

 

Shortnamesalex:“请给我们一个恢复到旧 UI 的选项。这个新 UI 太糟糕了。一切都感觉太局促但同时又太宽,而且代码字体令人眼花缭乱。”

 

还有网友说到:“我希望在编辑 Markdown 时看到对‘显示差异’功能的改进——以前,删除的内容是红色的,添加的内容是绿色的。现在这种差异却没有了。

 

但是这只是对新界面表达不满的其中几个,用户不断提出新问题:

 

 

可以说,GitHub 意识到了这些抱怨。“我们正在积极处理我们从社区收到的反馈,”公司发言人对外表示。“当我们构建新的代码搜索和代码视图时,我们优先考虑让开发人员能够快速搜索、导航和理解他们的代码,将关键信息置于上下文中,并最终提高他们的工作效率。这些优先事项仍然是我们的首要事项。”

 

参考链接:

 

https://github.blog/2023-05-08-github-code-search-is-generally-available/

https://github.com/orgs/community/discussions/54546#discussioncomment-5841984

https://www.theregister.com/2023/05/13/github_code_search_redesign_feedback/

 

2023-05-13 19:535396

评论

发布
暂无评论
发现更多内容

玩转MaxCompute SQL训练营! 数据分析挖掘迅速出师

阿里云大数据AI技术

大数据 数据分析

九章云极DataCanvas多模态大模型平台实践与思考

九章云极DataCanvas

SOA认知和方法论 | 京东物流技术团队

京东科技开发者

架构 软件架构 SOA 企业号10月PK榜

DevOps2023现状报告|注重文化、以用户为中心是成功的关键

SEAL安全

人工智能 DevOps DORA 企业号10月PK榜 技术报告

LAS Spark+云原生:数据分析全新解决方案

字节跳动数据平台

数据库 大数据 数据中台 数据研发 企业号10月PK榜

QSpace Pro for Mac(多窗文件管理器)

展初云

文件管理 Mac软件

Youtrack Linux 安装

HoneyMoose

SoundSource for mac(音量控制工具)

展初云

Mac软件 音量调节

百度世界大会2023重磅发布进行时,小度全新智能音箱重构家居美学新乐章

新消费日报

我与极客时间的故事

穿过生命散发芬芳

我和极客时间的故事

使用流量管理工具保护 Kubernetes 的六种方法

NGINX开源社区

Kubernetes DOS攻击 Web应用防火墙 原生云

李彦宏:我们即将进入一个AI原生的时代|百度世界2023

飞桨PaddlePaddle

百度 大模型 文心一言

小程序技术在信创操作系统里的应用趋势

没有用户名丶

英语学习工具:Eudic欧路词典 for Mac增强版

展初云

Mac 欧路词典 英语学习工具

原料所属权管理领先实践,助力造币厂来料加工原料管理降本增效

用友BIP

领先实践 原料所属权管理

如何从构建到运营?数科公司数智创新研讨会成功举办

用友BIP

数科公司

使用 ChaosBlade 验证 DLRover 的弹性和容错的稳定性

AI Infra

人工智能 开源 开发者 云原生 大模型

校源行 | 开放原子开源社团(西北工业大学)授牌仪式成功举行

开放原子开源基金会

图文结合丨Prometheus+Grafana+GreatSQL性能监控系统搭建指南(下)

GreatSQL

greatsql

推动产业升级及创新,Doris Summit Asia 2023 先进智造与电信论坛提前揭秘

SelectDB

数据库 大数据 数据仓库 实时数仓 apache doris

全面解析内存泄漏检测与修复技术

华为云开发者联盟

程序员 开发 内存 华为云 华为云开发者联盟

PaddleX解决分类、检测两大场景问题?实战精讲教程来了!

飞桨PaddlePaddle

AI 飞桨 套件

代码的艺术 - Writing Code Like a Pianist | 京东云技术团队

京东科技开发者

代码质量 整洁代码 企业号10月PK榜 系统质量

Sentinel源码改造,实现Nacos双向通信!

王磊

Java

List.of() Vs Arrays.asList()

越长大越悲伤

Java

用友 Fast by BIP引领专业技术服务企业快速迈向数智化创新

用友BIP

Fast by BIP

以烟草行业为例,聊聊如何基于 PLC + OPC + TDengine,快速搭建工业生产监测系统

TDengine

tdengine 时序数据库

商用显示设备包括哪些?

Dylan

企业 设备 显示器 LED显示屏

新晋技术管理者如何推动组织变革?

LigaAI

团队管理 研发管理 进阶 技术管理 企业号10月PK榜

小巧高效的音频录制 Piezo 最新激活版

胖墩儿不胖y

Mac软件 音频处理器 音频录制

GitHub 全新代码搜索引擎正式上线,但用户对新产品“不买账”_语言 & 开发_Tina_InfoQ精选文章