Sobre o gráfico de dependências
O grafo de dependência é um resumo dos arquivos de manifesto e de bloqueio armazenados em um repositório, além de outras dependências que sejam enviadas para o repositório ao usar a API de envio de dependência. Para cada repositório, ele mostra as dependências, os ecossistemas e os pacotes dos quais ele depende.
O GitHub Enterprise Server não recupera informações de licença para dependências e não calcula informações sobre os dependentes, os repositórios e os pacotes que dependem de um repositório.
Quando você efetua push de um commit para o GitHub Enterprise Server que altera ou adiciona um arquivo de manifesto ou de bloqueio compatível para o branch padrão, o grafo de dependência é atualizado automaticamente.
Para obter mais informações sobre os ecossistemas com suporte e os arquivos de manifesto, consulte Ecossistemas de pacotes com suporte para grafos de dependência.
Além disso, você pode usar a API de envio de dependência para enviar dependências do gerenciador de pacotes ou ecossistema de sua escolha, mesmo que o ecossistema não tenha suporte pelo grafo de dependência para análise de arquivos de manifesto ou de bloqueio. O grafo de dependência realizará a exibição das dependências enviadas agrupadas por ecossistema, mas separadas das dependências analisadas usando os arquivos de manifesto ou de bloqueio. Para obter mais informações sobre a API de envio de dependência, confira “Usar a API de envio de dependências”.
Ao criar um pull request que contém alterações para dependências direcionadas ao branch padrão, GitHub usará o gráfico de dependências para adicionar revisões de dependências ao pull request. Eles indicam se as dependências contêm vulnerabilidades e, em caso afirmativo, a versão da dependência na qual a vulnerabilidade foi corrigida. Para saber mais, confira Sobre a análise de dependência.
Se você tiver pelo menos acesso de leitura ao repositório, poderá exportar o grafo de dependência para o repositório como uma SBOM (conta de materiais de software) compatível com SPDX, por meio da GitHub interface do usuário ou da API REST do GitHub. Para obter mais informações, confira "Como exportar uma lista de materiais de software para seu repositório".
Disponibilidade do gráfico de dependências
Os proprietários de empresas podem configurar o grafo de dependência e os Dependabot alerts para uma empresa. Para saber mais, confira "Habilitando o gráfico de dependências para a sua empresa" e "Habilitando o Dependabot para sua empresa".
Para obter mais informações sobre a configuração do grafo de dependência, confira Configurando o grafo de dependência.
Dependências incluídas
O grafo de dependência inclui todas as dependências de um repositório que estão detalhadas nos arquivos de manifesto e de bloqueio, ou seus equivalentes, para ecossistemas com suporte, bem como quaisquer dependências que sejam enviadas ao usar a API de envio de dependência. Isso inclui:
- As dependências diretas, que são explicitamente definidas em um arquivo de manifesto ou de bloqueio ou que foram enviadas ao usar a API de envio de dependência
- Dependências indiretas dessas dependências diretas, também conhecidas como dependências transitórias ou subdependências
O grafo de dependência identifica as dependências indiretas dos arquivos de bloqueio. Se o ecossistema não tiver arquivos de bloqueio, você poderá usar ações pré-fabricadas que resolvam dependências transitivas para vários ecossistemas. Para saber mais, confira Usar a API de envio de dependências.
Para saber mais sobre como o GitHub Enterprise Server ajuda você a entender as dependências do seu ambiente, confira Sobre a segurança da cadeia de suprimento.
Usar o gráfico de dependências
Você pode usar o gráfico de dependências para:
- Explore os repositórios dos quais o seu código depende. Para saber mais, confira Explorar as dependências de um repositório.
- Ver e atualizar dependências vulneráveis no seu repositório. Para saber mais, confira Sobre alertas do Dependabot.
- Veja as informações sobre dependências vulneráveis em pull requests. Para saber mais, confira Revendo alterações de dependência em um pull request.