Skip to main content

Code-Navigation auf GitHub

Du kannst die Beziehungen in Repositorys und Repository-übergreifend durch die Code-Navigation direkt in GitHub Enterprise Cloud nachvollziehen.

Über Code-Navigation auf GitHub

Die Codenavigation hilft dir dabei, Code zu lesen, in Code zu navigieren und den Code zu verstehen. Dazu kannst du Definitionen einer benannten Entität, die einem Verweis auf diese Entität entsprechen, sowie Verweise, die einer Definition der Entität entsprechen, anzeigen und verknüpfen.

Screenshot einer Codedatei, in der die Funktion „Anforderung“ hervorgehoben ist, und einem Popupfenster mit Informationen zur untenstehenden Funktion. Das Popupfenster hat zwei Registerkarten: „Definition“ und „Verweis“.

Die Codenavigation verwendet die Open Source-Bibliothek tree-sitter. Die folgenden Sprachen unterstützen die Codenavigation.

  • Bash
  • C
  • C#
  • C++
  • CodeQL
  • Elixir
  • Go
  • JSX
  • Java
  • JavaScript
  • Lua
  • PHP
  • Protokollpuffer
  • Python
  • R
  • Ruby
  • Rust
  • Scala
  • Starlark
  • Swift
  • Typescript

Du brauchst dein Repository nicht zu konfigurieren, um die Codenavigation aktivieren zu können. Codenavigationsinformationen werden für diese unterstützten Sprachen automatisch in allen Repositorys extrahiert.

GitHub hat einen Codenavigationsansatz basierend auf der Open-Source-Bibliothek tree-sitter entwickelt, mit der alle Definitionen und Verweise in einem Repository durchsucht werden, um Entitäten mit einem bestimmten Namen zu finden.

Du kannst Tastenkombinationen verwenden, um in einer Codedatei zu navigieren. Weitere Informationen findest du unter Tastenkombinationen.

Verwenden des Symbolbereichs

Mit dem Symbolbereich kannst du jetzt schnell Symbole wie Funktionen oder Klassen in deinen Code anzeigen und zwischen diesen navigieren. Du kannst in einer einzelnen Datei, in allen Dateien in einem Repository oder sogar in allen öffentlichen Repositorys auf GitHub nach einem Symbol suchen.

Die Symbolsuche ist ein Feature der Codesuche. Weitere Informationen findest du unter Grundlegendes zur Syntax für die Codesuche auf GitHub.

  1. Wähle ein Repository aus, und navigiere dann zu einer Datei, die Symbole enthält.

  2. Klicke zum Öffnen des Symbolbereichs über dem Dateiinhalt auf .

    Alternativ kannst du den Symbolbereich öffnen, indem du in deiner Datei auf ein geeignetes Symbol klickst. Klickbare Symbole werden gelb hervorgehoben, wenn du mit dem Mauszeiger darauf zeigst.

  3. Klicke im Symbolbereich oder in der Datei selbst auf das Symbol, das du suchen möchtest.

    • Um im gesamten Repository nach einem Symbol zu suchen, klicke im Symbolbereich auf Dieses Symbol in diesem Repository suchen. Klicke auf Alle Repositorys, um in allen Repositorys auf GitHub nach einem Symbol zu suchen.
  4. Um zwischen Verweisen auf ein Symbol zu navigieren, klicke auf oder .

  5. Wenn du zu einem bestimmten Verweis auf ein Symbol navigieren möchtest, klicke unter In this file auf ein Ergebnis der Symbolsuche.

  6. Wenn du die Suche nach einem bestimmten Symbol beenden möchtest, klicke auf All Symbols.

Zur Definition einer Funktion oder Methode wechseln

Du kannst zur Definition einer Funktion oder Methoden innerhalb des gleichen Repository springen, indem Du auf den Funktions- oder Methodenaufruf in einer Datei klickst.

Screenshot des Funktionsfensters Der Abschnitt mit dem Titel „Definition“ ist dunkelorange umrandet.

Alle Verweise einer Funktion oder Methode suchen

Du findest alle Referenzen für eine Funktion oder Methode innerhalb eines Repositorys, indem du auf den Funktions- oder Methodenaufruf in einer Datei klickst.

Screenshot des Funktionsfensters Ein Abschnitt mit dem Titel „3 Verweise“ ist dunkelorange umrandet.

Problembehandlung bei der Codenavigation

Die Codenavigation ist zwar für dich aktiviert, es werden aber keine Links zu den Definitionen von Funktionen und Methoden angezeigt:

  • Die Codenavigation funktioniert nur bei aktiven Branches. Drücke auf den Branch, und versuche es erneut.
  • Die Codenavigation funktioniert nur für Repositorys mit weniger als 100.000 Dateien.

Weitere Informationen