Sobre o gráfico de dependências
The dependency graph is a summary of the manifest and lock files stored in a repository. Para cada repositório, ele mostra dependências, isto é, os ecossistemas e pacotes de que ele depende. O GitHub Enterprise Server não calcula informações sobre dependentes, repositórios e pacotes que dependem de um repositório.
Ao fazer push de um commit para o GitHub Enterprise Server, que muda ou adiciona um manifesto compatível ou um arquivo de bloqueio para o branch-padrão, o gráfico de dependências será atualizado automaticamente. Para obter informações sobre os ecossistemas compatíveis e arquivos de manifesto, consulte "ecossistemas de pacotes compatíveis" abaixo.
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 obter mais informações, consulte "Sobre a revisão de dependências".
Disponibilidade do gráfico de dependências
Enterprise owners can configure the dependency graph and Alertas do Dependabot for an enterprise. For more information, see "Enabling the dependency graph for your enterprise" and "Enabling Dependabot for your enterprise."
Dependências incluídas
O gráfico de dependência inclui todas as dependências de um repositório detalhado nos arquivos de manifesto e de bloqueio, ou seu equivalente, para ecossistemas compatíveis. Isto inclui:
- As dependências diretas, que são explicitamente definidas em um arquivo manifesto ou de bloqueio
- Dependências indiretas dessas dependências diretas, também conhecidas como dependências transitórias ou subdependências
O gráfico de dependências identifica as dependências indiretas dos arquivos de bloqueio.
Para obter mais informações sobre como GitHub Enterprise Server ajuda você a entender as dependências do seu ambiente, consulte "Sobre a segurança da cadeia de suprimentos."
Usar o gráfico de dependências
Você pode usar o gráfico de dependências para:
- Explorar os repositórios dos quais o seu código depende. Para obter mais informações, consulte "Explorar as dependências de um repositório".
- Ver e atualizar dependências vulneráveis no seu repositório. Para obter mais informações, consulte "Sobre Alertas do Dependabot."
- Veja as informações sobre dependências vulneráveis em pull requests. Para obter mais informações, consulte "Revisar as alterações de dependências em um pull request".
Ecossistemas de pacote compatíveis
Os formatos recomendados definem explicitamente quais versões são usadas para todas as dependências diretas e indiretas. Se você usar esses formatos, seu gráfico de dependências será mais preciso. Ele também reflete a configuração da criação atual e permite que o gráfico de dependências relate vulnerabilidades em dependências diretas e indiretas.
Gerenciador de pacotes | Linguagem | Formatos recomendados | Todos os formatos compatíveis |
---|---|---|---|
Composer | PHP | composer.lock | composer.json , composer.lock |
GitHub Actions workflows[†] | YAML | .yml , .yaml | .yml , .yaml |
Go modules | Go | go.sum | go.mod , go.sum |
Maven | Java, Scala | pom.xml | pom.xml |
Python Poetry | Python | poetry.lock | poetry.lock , pyproject.toml |
RubyGems | Ruby | Gemfile.lock | Gemfile.lock , Gemfile , *.gemspec |
[†] Os fluxos de trabalho de GitHub Actions devem estar localizados no diretório .github/workflows/` de um repositório a ser reconhecido como manifestos. Todas as ações ou fluxos de trabalho referenciados que usam a sintaxe `jobs[*].steps[*].uses` or `jobs.
[‡] Se você listar suas dependências do Python nas no arquivo
setup.py
, é possível que não possamos analisar e listar todas as dependências do seu projeto.
Observação: As dependências do fluxo de trabalho de GitHub Actions são exibidas no gráfico de dependências para fins informativos. Os alertas de dependência não são atualmente compatíveis com os fluxos de trabalho de GitHub Actions.
Leia mais