去年,代码搜索和导航工具“源图‘ 曾是 宣布开源. 由于它使浏览源代码更加方便,该工具本身开源对开发人员来说绝对是一大优势!
我们研究了它的功能,并试图找出它对那些经常浏览 GitHub、GitLab 等代码主机的开发人员有何帮助。
现在,随着它的新 3.10 版本,让我们来看看它的帮助和新功能。
源图功能
如上所述 他们的 GitHub 页面, Sourcegraph 具有以下特点:
- 快速的全球代码搜索
- 智能代码识别
- GitHub、GitLab 等上的代码主机增强功能
- 扩展 API,便于第三方集成
Sourcegraph 3.10 中的新功能
您会发现最新的 Sourcegraph 3.10 添加了重大改进和功能。
最新版本的主要亮点,如他们的 官方博文 是:
改进的搜索自动完成、本地 GitLab 集成以及搜索和替换自动化活动
让我们快速看一下 Sourcegraph 3.10 的变化:
- Sourcegraph 现在为 GitLab 提供本机代码智能
- 改进了搜索查询过滤器的自动完成功能
- 创建跨存储库搜索和替换活动的能力
- 基于 LSIF 的精确代码智能现在支持五种语言:Go、Typescript、Java、C++ 和 Python
- 全自动发布测试流程
欲了解更多信息,您可以查看完整的 变更日志.
您可以在您的服务器上部署 Sourcegraph 并将其配置为与您或您组织的 Git 存储库一起使用。 完成后,您将获得一个搜索引擎,您可以在其中搜索所有代码。
但是如果你像我一样是一个孤独的开发者,你仍然可以在 GitHub 上使用 Sourcegraph 或者像 GitLab 这样的 GitHub 替代品。
我将快速向您展示如何使用 Sourcegraph 在 GitHub 上进行更好的代码导航。
在 GitHub 上使用 Sourcegraph
让我们看看如何使用 火狐 或者 铬合金 延期。 这是官方的扩展 页.
在 GitHub 上打开的安全问题
在 6 月上半月,我向 Sourcegraph 报告了一个安全问题,该问题目前在 GitHub 上开放。 显然,该问题在一周前已修复,但尚未合并到主分支。 问题在于官方的 Firefox 扩展,它在安装期间要求访问所有网站,而应该有一个过滤器仅用于存储库站点,例如 GitHub、GitLab、BitBucket 等。 原来,由于一个 火狐漏洞 (现已修复),它无法在早期开发过程中合并。
这是安装了官方 Sourcegraph 扩展程序以及查看文件时的样子 维姆 GitHub上的存储库:

请注意我们如何在 GitHub 界面中看到新的 Sourcegraph 按钮,这要归功于已安装的扩展。 需要注意的一件事是,为了利用 Sourcegraph 的有用功能,甚至无需登录 GitHub 即可浏览托管代码及其存储库。
当你点击 “查看文件”,整个外观发生变化,文件在浏览器本身的全新界面中为您打开:

如果没有 Sourcegraph,如果您想查找具有特定格式的文件,例如本示例中的 C++ .cpp 文件,如果我们尝试在此存储库中使用 GitHub 自己的搜索引擎,则很难过滤和查看它们:

但是一旦你使用了这个扩展,看看你可以多么容易地在存储库中一次性查看所有这些文件:


Sourcegraph 可以非常智能地通过代码搜索缩小范围,如本视频所述:
Sourcegraph 中的代码智能由 长服务器,它可以识别您正在使用的编程语言的类型:

在以下视频中了解有关其用途的更多信息:
使用 Sourcegraph 的额外提示
即使没有在浏览器上安装扩展程序,您也可以直接使用 Sourcegraph 作为 这里 在 GitHub 上的任何存储库之上,只需添加 “sourcegraph.com/” 作为存储库的前缀 网址.
例如,官方 Vim 存储库的 URL 是:
要通过 Sourcegraph 查看相同的内容,请修改以下 URL,您就可以开始了:
sourcegraph.com/github.com/vim/vim
我也用这个方法测试过 GitLab 它也在那里工作! 您也可以尝试其他存储库! 有一个非官方的扩展名为 在 Sourcegraph 上打开 使用这种方法 火狐 和 铬合金.
Sourcegraph 开发人员在宣布其开源背后有一个总体计划:
使基本的代码智能无处不在(对于每种语言,在每个编辑器、代码主机等中)
让代码审查持续且智能
增加开源代码的数量和质量
以下是他们建议您可以为其做出贡献的方式 发展:
- 提交 拉取请求 到 Sourcegraph 开源项目
- 积极参与其 持续发展
- 添加和改进 文件
- 构建 Sourcegraph 扩展 增强 Sourcegraph 和 GitHub 上的代码查看/审查
因此,这是对 Sourcegraph 如何让开发人员的生活更轻松、更轻松的简要介绍。 您可能还想看看 Sourcetrail,这是一个最近开源的项目,它允许您可视化代码库。
您是开发人员吗? 您想在日常编程任务中采用这种新的开源工具吗? 在下面的评论部分让我们知道。