About the dependency graph
La gráfica de dependencias es un resumen de los archivos de bloqueo y manifiesto que se almacenan en un repositorio. Para cada repositorio, muestra dependencias, es decir, los ecosistemas y los paquetes de los cuales depende. GitHub Enterprise Server no calcula información alguna sobre los dependientes, repositorios y paquetes que dependen de un repositorio.
When you push a commit to GitHub Enterprise Server that changes or adds a supported manifest or lock file to the default branch, the dependency graph is automatically updated. For information on the supported ecosystems and manifest files, see "Supported package ecosystems" below.
When you create a pull request containing changes to dependencies that targets the default branch, GitHub uses the dependency graph to add dependency reviews to the pull request. These indicate whether the dependencies contain vulnerabilities and, if so, the version of the dependency in which the vulnerability was fixed. For more information, see "About dependency review."
Dependency graph availability
Los propietarios de empresa pueden configurar la gráfica de dependencias y las Las alertas del dependabot para una empresa. Para obtener más información, consulta la sección "Habilitar la gráfica de dependencias para tu empresa" y "Habilitar el Dependabot para tu empresa".
Dependencies included
The dependency graph includes all the dependencies of a repository that are detailed in the manifest and lock files, or their equivalent, for supported ecosystems. This includes:
- Direct dependencies, that are explicitly defined in a manifest or lock file
- Indirect dependencies of these direct dependencies, also known as transitive dependencies or sub-dependencies
The dependency graph identifies indirect dependencies from the lock files.
For more information on how GitHub Enterprise Server helps you understand the dependencies in your environment, see "About supply chain security."
Using the dependency graph
You can use the dependency graph to:
- Explore the repositories your code depends on. For more information, see "Exploring the dependencies of a repository."
- View and update vulnerable dependencies for your repository. For more information, see "About Las alertas del dependabot."
- See information about vulnerable dependencies in pull requests. For more information, see "Reviewing dependency changes in a pull request."
Supported package ecosystems
The recommended formats explicitly define which versions are used for all direct and all indirect dependencies. If you use these formats, your dependency graph is more accurate. It also reflects the current build set up and enables the dependency graph to report vulnerabilities in both direct and indirect dependencies.
Package manager | Languages | Recommended formats | All supported formats |
---|---|---|---|
Composer | PHP | composer.lock | composer.json , composer.lock |
NuGet | .NET languages (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 modules | 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 |
[†]
Note: This feature is unavailable in GitHub Enterprise Server 3.5.0, 3.5.1, 3.5.2, and 3.5.3. The feature will be available in an upcoming patch release. For more information about upgrades, contact your site administrator.
For more information about determining the version of GitHub Enterprise Server you're using, see "About versions of GitHub Docs."
GitHub Actions workflows must be located in the .github/workflows/
directory of a repository to be recognized as manifests. Any actions or workflows referenced using the syntax jobs[*].steps[*].uses
or jobs.<job_id>.uses
will be parsed as dependencies. For more information, see "Workflow syntax for GitHub Actions."
[‡] If you list your Python dependencies within a setup.py
file, we may not be able to parse and list every dependency in your project.
Note: GitHub Actions workflow dependencies are displayed in the dependency graph for informational purposes. Dependabot alerts are not currently supported for GitHub Actions workflows.