Frecuentemente publicamos actualizaciones de nuestra documentación. Es posible que la traducción de esta página esté en curso. Para conocer la información más actual, visita la documentación en inglés. Si existe un problema con las traducciones en esta página, por favor infórmanos.
Versión del artículo: GitHub.com

Acerca del gráfico de dependencias

Información detallada sobre la gráfica de dependencias, el ecosistema con el que es compatible, y sobre cómo determina de qué paquetes depende un repositorio.

En este artículo

Disponibilidad de la gráfica de dependencias

La gráfica de dependencias se encuentra disponible para cualquier repositorio público que defina dependencias en un ecosistema de paquetes compatible utilizando un formato de archivos compatible.Los administradores de repositorio también pueden configurar la gráfica de dependencias para los repositorios privados.

Acerca del gráfico de dependencias

The dependency graph is a summary of the manifest and lock files stored in a repository. For each repository, it shows:

  • Las dependencias, ecosistemas y paquetes de los cuales depende
  • Dependents, the repositories and packages that depend on it

When you push a commit to GitHub that changes or adds a supported manifest or lock file to the default branch, the dependency graph is automatically updated. In addition, the graph is updated when anyone pushes a change to the repository of one of your dependencies. For information on the supported ecosystems and manifest files, see "Supported package ecosystems" below.

Dependencias que se incluyen

La gráfica de dependencias incluye todas las dependencias de un repositorio que se describan en los archivos de manifiesto y de bloqueo o sus equivalentes para los ecosistemas compatibles. Esto incluye:

  • Las dependencias directas que se definen explícitamente en el archivo de manifiesto o de bloqueo
  • Las dependencias indirectas de estas dependencias directas, también conocidas como dependencias transitorias o sub-dependencias

The dependency graph identifies indirect dependencies either explicitly from a lock file or by checking the dependencies of your direct dependencies. Para la gráfica más confiable, debes utilizar archivos de bloqueo (o su equivalente), ya que estos definen exactamente qué versiones de las dependencias directas e indirectas estás utilizando actualmente. If you use lock files, you also ensure that all contributors to the repository are using the same versions, which will make it easier for you to test and debug code.

Dependents included

For public repositories, only public repositories that depend on it or on packages that it publishes are reported. This information is not reported for private repositories.

Utiizar la gráfica de dependencias

Puedes utilizar la gráfica de dependencias para:

Habilitar la gráfica de dependencias

Para generar una gráfica de dependencias, GitHub necesita acceso de solo lectura a los archivos de manifiesto y de bloqueo de un repositorio. La gráfica de dependencias se genera automáticamente para todos los repositorios públicos y puedes elegir habilitarla para los privados. For information about enabling or disabling it for private repositories, see "Exploring the dependencies of a repository."

Cuando la gráfica de dependencias se habilita por primera vez, cualquier manifiesto y archivo de bloqueo para los ecosistemas compatibles se pasarán de inmediato. La gráfica se llena en cuestión de minutos habitualmente, pero esto puede tardar más para los repositorios que tengan muchas dependencias. Once enabled, the graph is automatically updated with every push to the repository and every push to other repositories in the graph.

Ecosistemas de paquetes compatibles

Los formatos recomendados definen explícitamente qué versiones se utilizan para todas las dependencias directas e indirectas. Si utilizas estos formatos, tu gráfica de dependencias será más precisa. It also reflects the current build set up and enables the dependency graph to report vulnerabilities in both direct and indirect dependencies. Indirect dependencies that are inferred from a manifest file (or equivalent) are excluded from the checks for vulnerable dependencies.

Administración de paquetesIdiomasFormatos recomendadosTodos los formatos compatibles
ComposerPHPcomposer.lock
dotnet CLI.NET languages (C#, C++, F#, VB).csproj, .vbproj, .nuspec, .vcxproj, .fsproj.csproj, .vbproj, .nuspec, .vcxproj, .fsproj, packages.config
MavenJava, Scalapom.xmlpom.xml
npmJavaScriptpackage-lock.jsonpackage-lock.json, package.json
Python PIPPythonrequirements.txt, pipfile.lockrequirements.txt, pipfile.lock, setup.py*
RubyGemsRubyGemfile.lockGemfile.lock, Gemfile, *.gemspec
YarnJavaScriptyarn.lockpackage.json, yarn.lock

Nota: Si listas tus dependencias de Python dentro de un archivo setup.py, es probable que no podamos analizar y listar cada una de las dependencias en tu proyecto.

Leer más

Pregunta a una persona

¿No puedes encontrar lo que estás buscando?

Contáctanos