Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.
В настоящее время GitHub AE находится в ограниченном выпуске.

Сведения о графе зависимостей

Граф зависимостей можно использовать для обнаружения всех зависимостей проекта. Граф зависимостей поддерживает ряд популярных экосистем пакетов.

Сведения о графе зависимостей

Граф зависимостей — это сводка файлов манифеста и блокировки, хранящихся в репозитории. Для каждого репозитория отображается зависимости, то есть экосистемы и пакеты, от которых он зависит. GitHub AE не вычисляет сведения о зависимых, репозиториях и пакетах, которые зависят от репозитория.

При отправке в GitHub AE фиксации, которая изменяет или добавляет поддерживаемый манифест или файл блокировки в ветвь по умолчанию, граф зависимостей автоматически обновляется. Сведения о поддерживаемых экосистемах и файлах манифеста см. в разделе Поддерживаемые экосистемы пакетов ниже.

Когда вы создаете запрос на вытягивание, содержащий изменения зависимостей, предназначенные для ветви по умолчанию, GitHub использует граф зависимостей для добавления проверок зависимостей в запрос на вытягивание. Они указывают, содержат ли зависимости уязвимости и если да, то версию зависимости, в которой была исправлена уязвимость. Дополнительные сведения см. в статье "Сведения о проверке зависимостей".

Доступность графа зависимостей

Владельцы предприятия могут настроить Dependabot alerts для предприятия. Дополнительные сведения см. в разделах Включение Dependabot для предприятия.

Включенные зависимости

Граф зависимостей включает все зависимости репозитория, которые определены в файлах манифеста и блокировки или другим способом, для поддерживаемых экосистем. В том числе:

  • Прямые зависимости, явно определенные в файле манифеста или блокировки.
  • Косвенные зависимости этих прямых зависимостей, также известные как транзитивные зависимости или подзависимости

Граф зависимостей определяет косвенные зависимости из файлов блокировки.

Дополнительную информацию о том, как GitHub AE помогает понять зависимости в среде, см. в разделе Сведения о безопасности цепочки поставок.

Использование графа зависимостей

Граф зависимостей можно использовать для следующих целей.

Поддерживаемые экосистемы пакетов

Рекомендуемые форматы явно определяют, какие версии используются для всех прямых и косвенных зависимостей. При использовании этих форматов график зависимостей будет более точным. Он также отражает текущую настройку сборки и позволяет графу зависимостей сообщать об уязвимостях как в прямых, так и косвенных зависимостях.

| Диспетчер пакетов | Языки | Рекомендуемые форматы | Все поддерживаемые форматы | | --- | --- | --- | ---| | Composer php | composer.lock | composer.json, composer.lock | | NuGet | языков .NET (C#, F#, VB), C++ | .csproj, .vbproj, .nuspec, .vcxproj, .fsproj | .csproj, .vbproj, .nuspec, .vcxproj, .fsproj, packages.config | | модулей 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 |

[‡] Если вы перечисляете зависимости Python в файле setup.py, то нам, возможно, не удастся проанализировать и перечислить каждую зависимость в вашем проекте.

Дополнительные материалы