Acerca del gráfico de dependencias
El gráfico de dependencias es un resumen de los archivos de manifiesto y de bloqueo almacenados en un repositorio. Para cada repositorio, muestra dependencias, es decir, los ecosistemas y paquetes de los cuales depende.
GitHub Enterprise Server no calcula información sobre los dependientes, repositorios y paquetes que dependen de un repositorio.
Al insertar una confirmación en GitHub Enterprise Server que cambie o agregue un archivo de bloqueo o de manifiesto admitido a la rama predeterminada, el gráfico de dependencias se actualizará de forma automática. Para más información sobre los ecosistemas y archivos de manifiesto admitidos, vea "Ecosistemas de paquetes admitidos" a continuación.
Cuando creas una solicitud de cambios que contenga los cambios de las dependencias que apuntan a la rama predeterminada, GitHub utiliza la gráfica de dependencias para agregar revisiones de dependencia a la solicitud de cambios. Estas indican si las dependencias contendrán vulnerabilidades y, si es el caso, la versión de la dependencia en la cual se arregló la vulnerabilidad. Para obtener más información, vea «Acerca de la revisión de dependencias».
Disponibilidad de la gráfica de dependencias
Los propietarios de la empresa pueden configurar el gráfico de dependencias y Dependabot alerts para una empresa. Para más información, consulta "Habilitación del gráfico de dependencias para la empresa" y "Habilitación de Dependabot para la empresa".
Para obtener más información sobre la configuración del gráfico de dependencias, consulta "Configuración del gráfico de dependencias".
Dependencias que se incluyen
El gráfico de dependencias incluye todas las dependencias de un repositorio que se detallan en los archivos de manifiesto y bloqueo, o su equivalente, para los ecosistemas admitidos. Esto incluye:
- Las dependencias directas, que se definen explícitamente en un archivo de manifiesto o bloqueo
- Las dependencias indirectas de estas dependencias directas, también conocidas como dependencias transitorias o sub-dependencias
El gráfico de dependencias identifica dependencias indirectas de los archivos de bloqueo.
Para obtener más información sobre cómo GitHub Enterprise Server te ayuda a comprender las dependencias de tu entorno, consulta "Acerca de la seguridad de la cadena de suministro".
Utiizar la gráfica de dependencias
Puedes utilizar la gráfica de dependencias para:
- Explore los repositorios de los que depende el código en. Para obtener más información, vea «Explorar las dependencias de un repositorio».
- Ver y actualizar las dependencias vulnerables de tu repositorio. Para obtener más información, consulta "Acerca de las alertas Dependabot".
- Consulta la información sobre las dependencias vulnerables en las solicitudes de cambios. Para más información, consulta "Revisar los cambios de las dependencias en una solicitud de cambios".
Ecosistemas de paquetes compatibles
Los formatos recomendados definen explícitamente qué versiones se utilizan para todas las dependencias directas e indirectas. Si usa estos formatos, el gráfico de dependencias será más preciso. También refleja la configuración de compilación actual y permite que el gráfico de dependencias notifique vulnerabilidades tanto en las dependencias directas como en las indirectas.
| Administrador de paquetes | Idiomas | Formatos recomendados | Todos los formatos admitidos |
| --- | --- | --- | ---| | Cargo | Rust | Cargo.lock
| Cargo.toml
, Cargo.lock
| | Composer | PHP | composer.lock
| composer.json
, composer.lock
| | NuGet | Lenguajes de .NET (C#, F#, VB), C++ | .csproj
, .vbproj
, .nuspec
, .vcxproj
, .fsproj
| .csproj
, .vbproj
, .nuspec
, .vcxproj
, .fsproj
, packages.config
| | GitHub Actions flujos de trabajo | YAML | .yml
, .yaml
| .yml
, .yaml
| | Módulos de Go | Go | go.mod
| 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
|
Notas:
-
Si enumera las dependencias de Python dentro de un archivo
setup.py
, es posible que no podamos analizar y enumerar cada una de las dependencias del proyecto. -
Los flujos de trabajo de GitHub Actions se deben ubicar en el directorio
.github/workflows/
de un repositorio para que se reconozcan como manifiestos. Las acciones o flujos de trabajo a los que se hace referencia mediante la sintaxisjobs[*].steps[*].uses
ojobs.<job_id>.uses
se analizarán como dependencias. Para obtener más información, vea «Sintaxis del flujo de trabajo para Acciones de GitHub». -
Las dependencias de los flujos de trabajo de GitHub Actions se muestran en el grafo de dependencias con fines informativos. Las alertas del dependabot no son compatibles actualmente con los flujos de trabajo de GitHub Actions.