Skip to main content

Informationen zum Abhängigkeitsdiagramm

Du kannst das Abhängigkeitsdiagramm verwenden, um alle Abhängigkeiten deines Projekts zu identifizieren. Das Abhängigkeitsdiagramm unterstützt eine Reihe beliebter Paketökosysteme.

Informationen zum Abhängigkeitsdiagramm

Das Abhängigkeitsdiagramm ist eine Zusammenfassung von Manifest- und Sperrdateien, die in einem Repository gespeichert sind. Für jedes Repository wird Folgendes angezeigt Abhängigkeiten, also die Ökosysteme und Pakete, von denen es abhängig ist. GitHub Enterprise Server berechnet weder Informationen zu abhängigen Elementen noch zu den Repositorys und Paketen, die von einem Repository abhängig sind.

Wenn du ein Commit mit Push an GitHub Enterprise Server überträgst, das eine unterstützte Manifest- oder Sperrdatei ändert oder dem Standardbranch hinzufügt, wird das Abhängigkeitsdiagramm automatisch aktualisiert. Informationen zu den unterstützten Ökosystemen und Manifestdateien findest du unter Unterstützte Paketökosysteme weiter unten.

Beim Erstellen eines Pull Requests, der Änderungen an Abhängigkeiten enthält und auf den Standardbranch abzielt, verwendet GitHub das Abhängigkeitsdiagramm, um Abhängigkeitsüberprüfungen zum Pull Request hinzuzufügen. Diese geben an, ob die Abhängigkeiten Sicherheitsrisiken enthalten und zeigen ggf. die Version der Abhängigkeit an, in der die Sicherheitsanfälligkeit behoben wurde. Weitere Informationen findest du unter Informationen zur Abhängigkeitsprüfung.

Verfügbarkeit von Abhängigkeitsdiagrammen

Weitere Informationen zur Konfiguration des Abhängigkeitsdiagramms findest du unter Konfigurieren des Abhängigkeitsdiagramms.

GitHub Enterprise-Besitzer können das Abhängigkeitsdiagramm und Dependabot alerts für ein Unternehmen konfigurieren. Weitere Informationen findest du unter Aktivieren des Abhängigkeitsdiagramms für dein Unternehmen und Aktivieren von Dependabot für dein Unternehmen.

Abhängigkeiten enthalten

Das Abhängigkeitsdiagramm enthält alle Abhängigkeiten eines Repositorys, die im Manifest und in den Sperrdateien oder deren Entsprechung für unterstützte Ökosysteme. Dies schließt Folgendes ein:

  • Direkte Abhängigkeiten, die explizit in einer Manifest- oder Sperrdatei definiert sind,
  • Indirekte Abhängigkeiten dieser direkten Abhängigkeiten, auch bekannt als transitive Abhängigkeiten oder Unterabhängigkeiten bezeichnet

Das Abhängigkeitsdiagramm identifiziert indirekte Abhängigkeiten aus den Sperrdateien zu testen und zu debuggen.

Weitere Informationen dazu, wie GitHub Enterprise Server dabei hilft, die Abhängigkeiten in deiner Umgebung zu verstehen, findest du unter Informationen zur Sicherheit der Lieferkette.

Verwenden des Abhängigkeitsdiagramms

Du kannst das Abhängigkeitsdiagramm verwenden, um folgende Aktionen auszuführen:

Unterstützte Paket-Ökosysteme

Die empfohlenen Formate definieren explizit, welche Versionen für alle direkten und indirekten Abhängigkeiten verwendet werden. Wenn du diese Formate verwendest, ist dein Abhängigkeitsdiagramm genauer. Außerdem wird der aktuelle Build eingerichtet und ermöglicht es dem Abhängigkeitsdiagramm, Sicherheitsrisiken sowohl in direkten als auch indirekten Abhängigkeiten zu melden.

| Paket-Manager | Languages | Empfohlene Formate | Alle unterstützten Formate | | --- | --- | --- | ---| | Composer | PHP | composer.lock | composer.json, composer.lock | | NuGet | .NET-Sprachen (C#, F#, VB), C++ | .csproj, .vbproj, .nuspec, .vcxproj, .fsproj | .csproj, .vbproj, .nuspec, .vcxproj, .fsproj, packages.config | | GitHub Actions-Workflows[†] | YAML | .yml, .yaml | .yml, .yaml | | Go-Module | Go | go.sum | go.mod, go.sum | | Maven | Java, Scala | pom.xml | pom.xml | | npm | JavaScript | package-lock.json | package-lock.json, package.json| | pip | Python | requirements.txt, pipfile.lock | requirements.txt, pipfile, pipfile.lock, setup.py[‡] | | Python Poetry | Python | poetry.lock | poetry.lock, pyproject.toml | | RubyGems | Ruby | Gemfile.lock | Gemfile.lock, Gemfile, *.gemspec | | Yarn | JavaScript | yarn.lock | package.json, yarn.lock |

[†]

Hinweis: Dieses Feature war in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2 und 3.5.3 nicht verfügbar. Das Feature ist ab Version 3.5.4 verfügbar. Kontaktiere deinen Websiteadministratorin, wenn du weitere Informationen zu Upgrades benötigst.

Weitere Informationen zum Ermitteln der derzeit verwendeten Version von GitHub Enterprise Server findest du unter Informationen zu Versionen von GitHub Docs.

GitHub Actions-Workflows müssen sich im .github/workflows/-Verzeichnis eines Repositorys befinden, um als Manifeste erkannt zu werden. Alle Aktionen oder Workflows, auf die mithilfe der Syntax jobs[*].steps[*].uses oder jobs.<job_id>.uses verwiesen wird, werden als Abhängigkeiten analysiert. Weitere Informationen findest du unter Workflowsyntax für GitHub Actions.

[‡] Wenn du deine Python-Abhängigkeiten in einer setup.py-Datei auflistest, können wir möglicherweise nicht alle Abhängigkeiten in deinem Projekt analysieren und auflisten.

Hinweis: GitHub Actions Workflowabhängigkeiten werden im Abhängigkeitsdiagramm zu Informationszwecken angezeigt. Dependabot-Warnungen werden für GitHub Actions-Workflows derzeit nicht unterstützt.

Weiterführende Themen