关于在 GitHub 上导航代码
代码导航通过显示并链接对应实体引用的已命名实体的定义,以及对应实体定义的引用,帮助您阅读、导航和理解代码。

代码导航使用开源的 tree-sitter 库。以下语言支持代码导航。
- Bash
- C
- C#
- C++
- CodeQL
- Elixir
- Go
- JSX
- Java
- JavaScript
- Lua
- PHP
- Protocol Buffers
- Python
- R
- Ruby
- Rust
- Scala
- Starlark
- Swift
- Typescript
您无需在仓库中进行任何配置即可开启代码导航。我们会自动为所有仓库中受支持的语言提取代码导航信息。
GitHub 基于开源的 tree-sitter 库开发了代码导航方案,可搜索仓库内的所有定义和引用,以查找具有给定名称的实体。
您可以使用键盘快捷键在代码文件中进行导航。更多信息请参见 键盘快捷键。
使用符号面板
现在,您可以使用符号面板快速查看并在代码中的函数、类等符号之间进行导航。您可以在单个文件、整个仓库的所有文件,甚至所有公开的 GitHub 仓库中搜索符号。
符号搜索是代码搜索的功能之一。更多信息请参见 了解 GitHub 代码搜索语法。
-
选择一个仓库,然后导航到包含符号的文件。
-
要调出符号面板,请在文件内容上方点击.
或者,您也可以通过点击文件中符合条件的符号来打开符号面板。可点击的符号在悬停时会以黄色高亮显示。
-
从符号面板或文件本身点击您想要查找的符号。
- 要在整个仓库范围内搜索符号,请在符号面板中点击 Search for this symbol in this repository。要在 GitHub 上的所有仓库中搜索符号,请点击 all repositories。
-
要在符号的引用之间进行导航,请点击或.
-
要导航到符号的特定引用,请在 在此文件中 下的符号搜索结果中点击相应结果。
-
要退出特定符号的搜索,请点击 所有符号。
跳转到函数或方法的定义
您可以在同一仓库内通过点击文件中的函数或方法调用,跳转到该函数或方法的定义。

查找函数或方法的所有引用
您可以在同一仓库内通过点击文件中的函数或方法调用,查找该函数或方法的所有引用。

代码导航故障排除
如果已为您开启代码导航,但看不到函数和方法定义的链接
- 代码导航仅在活跃分支上有效。请将更改推送到该分支后重试。
- 代码导航仅对文件数少于 100,000 的仓库有效。