关于在 GitHub 上导航代码
代码导航通过显示和链接该实体的引用对应的命名实体定义以及实体定义对应的引用,帮助您阅读、导航和理解代码。
代码导航使用开放源代码 tree-sitter
库。 以下语言支持代码导航。
- Bash
- C
- C#
- C++
- CodeQL
- Elixir
- Go
- JSX
- Java
- JavaScript
- Lua
- PHP
- 协议缓冲区
- Python
- R
- Ruby
- Rust
- Scala
- Starlark
- Swift
- Typescript
您无需在存储库中配置任何内容即可启用代码导航。 我们将在所有仓库中自动提取这些受支持语言的代码导航信息。
GitHub 基于开放源代码 tree-sitter
库开发了代码导航方法,用于搜索仓库中的所有定义和引用,以查找具有给定名称的实体。
可以使用键盘快捷键在代码文件中导航。 有关详细信息,请参阅 键盘快捷方式。
使用符号窗格
现在,可以使用符号窗格在代码中的函数或类等符号之间快速查看和导航。 可以在单个文件中、存储库中的所有文件中搜索符号,甚至可以在 GitHub 上的所有公共存储库中搜索符号。
符号搜索是代码搜索的一项功能。 有关详细信息,请参阅“了解 GitHub 代码搜索语法”。
-
选择存储库,然后导航到包含符号的文件。
-
若要打开符号窗格,请在文件内容上方单击 。
或者,可以通过单击文件中的合格符号来打开符号窗格。 将鼠标悬停在可单击符号上时,它们会以黄色突出显示。
-
单击要从符号窗格或文件本身中查找的符号。
- 若要在整个存储库中搜索符号,请在符号窗格单击“在此存储库中搜索此符号”。 若要在 GitHub 上的所有存储库中搜索符号,请单击“所有存储库”。
-
若要在对符号的引用之间导航,请单击 或 。
-
要导航到对符号的特定引用,请单击“ In this file”下的符号搜索结果****。
-
要退出对特定符号的搜索,请单击“ All Symbols”****。
跳至功能或方法的定义
您可以在文件中单击函数或方法调用,跳至同一仓库中该函数或方法的定义。
查找函数或方法的所有引用
通过单击文件中的函数或方法调用,可以在同一存储库中找到函数或方法的所有引用。
代码导航疑难解答
如果已为您启用代码导航,但您没有看到指向函数和方法定义的链接:
- 代码导航仅适用于活动的分支。 推送到分支,然后重试。
- 代码导航仅适用于文件少于 100,000 个的存储库。