{"meta":{"title":"Настройка обновлений версий Dependabot","intro":"Вы можете настроить репозиторий, чтобы Dependabot автоматически обновлял используемые вами пакеты.","product":"Безопасность и качество кода","breadcrumbs":[{"href":"/ru/code-security","title":"Безопасность и качество кода"},{"href":"/ru/code-security/how-tos","title":"How-tos"},{"href":"/ru/code-security/how-tos/secure-your-supply-chain","title":"Обеспечьте безопасность своей цепочки поставок"},{"href":"/ru/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies","title":"Защита зависимостей"},{"href":"/ru/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/configuring-dependabot-version-updates","title":"Настройка обновлений версий"}],"documentType":"article"},"body":"# Настройка обновлений версий Dependabot\n\nВы можете настроить репозиторий, чтобы Dependabot автоматически обновлял используемые вами пакеты.\n\n<!--Marketing-LINK: From /features/security/software-supply-chain page \"About version updates for dependencies\".-->\n\n## Включение Dependabot version updates\n\nВы включите Dependabot version updates путем фиксации `dependabot.yml` файла конфигурации в репозитории.\nЕсли включить эту функцию на странице параметров, GitHub создаст базовый файл, который можно редактировать. В противном случае создайте файл в любом редакторе.\n\n1. На GitHubперейдите на главную страницу репозитория.\n\n2. Под именем репозитория щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Settings**. Если вкладка \"Параметры\" не отображается, выберите **раскрывающееся меню <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** и нажмите кнопку **\"Параметры**\".\n\n   ![Снимок экрана: заголовок репозитория с вкладками. Вкладка \"Параметры\" выделена темно-оранжевым контуром.](/assets/images/help/repository/repo-actions-settings.png)\n\n3. В разделе \"Безопасность\" боковой панели щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-codescan\" aria-label=\"codescan\" role=\"img\"><path d=\"M8.47 4.97a.75.75 0 0 0 0 1.06L9.94 7.5 8.47 8.97a.75.75 0 1 0 1.06 1.06l2-2a.75.75 0 0 0 0-1.06l-2-2a.75.75 0 0 0-1.06 0ZM6.53 6.03a.75.75 0 0 0-1.06-1.06l-2 2a.75.75 0 0 0 0 1.06l2 2a.75.75 0 1 0 1.06-1.06L5.06 7.5l1.47-1.47Z\"></path><path d=\"M12.246 13.307a7.501 7.501 0 1 1 1.06-1.06l2.474 2.473a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM1.5 7.5a6.002 6.002 0 0 0 3.608 5.504 6.002 6.002 0 0 0 6.486-1.117.748.748 0 0 1 .292-.293A6 6 0 1 0 1.5 7.5Z\"></path></svg> Advanced Security**.\n\n4. В разделе \"Dependabot\" справа от \"Dependabot version updates\" нажмите кнопку **\"Включить** , чтобы открыть базовый `dependabot.yml` файл конфигурации в `.github` каталоге репозитория\". For information about the options you can use to customize how Dependabot maintains your repositories, see [Справочник по параметрам зависимостей](/ru/code-security/dependabot/working-with-dependabot/dependabot-options-reference).\n\n   ```yaml copy\n   # To get started with Dependabot version updates, you'll need to specify which\n   # package ecosystems to update and where the package manifests are located.\n\n   version: 2\n   updates:\n   - package-ecosystem: \"\" # See documentation for possible values\n     directory: \"/\" # Location of package manifests\n     schedule:\n       interval: \"weekly\"\n   ```\n\n5. Добавьте `version`. Этот ключ является обязательным. Файл должен начинаться с `version: 2`.\n\n6. При необходимости, если у вас есть зависимости в частном реестре, добавьте раздел `registries`, содержащий сведения о проверке подлинности. Дополнительные сведения см. в разделе [Настройка доступа к частным реестрам для Dependabot](/ru/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot).\n\n7. Добавьте раздел `updates` с записью для каждого диспетчера пакетов, который должен отслеживаться Dependabot. Этот ключ является обязательным. Он используется для настройки того, как Dependabot обновляет версии или зависимости проекта. Каждая запись настраивает параметры обновления для определенного диспетчера пакетов. Дополнительные сведения см. в разделе \\[AUTOTITLE и [О файле dependabot.yml](/ru/code-security/concepts/supply-chain-security/about-the-dependabot-yml-file)]\\(/code-security/dependabot/working-with-dependabot/dependabot-options-reference).\n\n8. Для каждого диспетчера пакетов используйте следующие параметры:\n\n   * `package-ecosystem`, чтобы указать диспетчер пакетов. Дополнительные сведения о поддерживаемых диспетчерах пакетов см. в статье [`package-ecosystem`](/ru/code-security/dependabot/working-with-dependabot/dependabot-options-reference#package-ecosystem-).\n   * `directories` или `directory` указать расположение нескольких манифестов или других файлов определений. Дополнительные сведения см. в разделе [\"Определение нескольких расположений для файлов](/ru/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#defining-multiple-locations-for-manifest-files) манифеста\".\n   * `schedule.interval`, чтобы указать частоту проверки наличия новых версий.\n\n9. Проверьте файл конфигурации *dependabot.yml* в каталоге `.github` репозитория.\n\n### Пример файла `dependabot.yml`\n\nПриведенный ниже пример `dependabot.yml` файла настраивает обновления версий для трех диспетчеров пакетов: npm, Docker и GitHub Actions. При отправке этого файла Dependabot проверяет файлы манифеста в ветви по умолчанию на наличие устаревших зависимостей. При обнаружении устаревших зависимостей в ветвь по умолчанию будут отправлены запросы на вытягивание для обновления зависимостей.\n\n```yaml copy\n# Basic `dependabot.yml` file with\n# minimum configuration for three package managers\n\nversion: 2\nupdates:\n  # Enable version updates for npm\n  - package-ecosystem: \"npm\"\n    # Look for `package.json` and `lock` files in the `root` directory\n    directory: \"/\"\n    # Check the npm registry for updates every day (weekdays)\n    schedule:\n      interval: \"daily\"\n\n  # Enable version updates for Docker\n  - package-ecosystem: \"docker\"\n    # Look for a `Dockerfile` in the `root` directory\n    directory: \"/\"\n    # Check for updates once a week\n    schedule:\n      interval: \"weekly\"\n\n  # Enable version updates for GitHub Actions\n  - package-ecosystem: \"github-actions\"\n    # Workflow files stored in the default location of `.github/workflows`\n    # You don't need to specify `/.github/workflows` for `directory`. You can use `directory: \"/\"`.\n    directory: \"/\"\n    schedule:\n      interval: \"weekly\"\n```\n\nВ приведенном выше примере, если зависимости Docker сильно устарели, может потребоваться начать с расписания `daily` и применять его до тех пор, пока зависимости не будут обновлены, а затем вернуться к еженедельному расписанию.\n\n## Включение обновлений версий для вилок\n\nЕсли вы хотите включить обновления версий для вилок, необходимо выполнить дополнительный шаг. Обновления версий не включены автоматически при наличии файла конфигурации.`dependabot.yml` Это гарантирует, что владельцы вилок непреднамеренно включают обновления версий при извлечении изменений, включая `dependabot.yml` файл конфигурации из исходного репозитория.\n\nВ вилке также необходимо явным образом включить Dependabot.\n\n1. На GitHubперейдите на главную страницу репозитория.\n2. Под именем репозитория щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Settings**. Если вкладка \"Параметры\" не отображается, выберите **раскрывающееся меню <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** и нажмите кнопку **\"Параметры**\".\n\n   ![Снимок экрана: заголовок репозитория с вкладками. Вкладка \"Параметры\" выделена темно-оранжевым контуром.](/assets/images/help/repository/repo-actions-settings.png)\n3. В разделе \"Безопасность\" боковой панели щелкните **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-codescan\" aria-label=\"codescan\" role=\"img\"><path d=\"M8.47 4.97a.75.75 0 0 0 0 1.06L9.94 7.5 8.47 8.97a.75.75 0 1 0 1.06 1.06l2-2a.75.75 0 0 0 0-1.06l-2-2a.75.75 0 0 0-1.06 0ZM6.53 6.03a.75.75 0 0 0-1.06-1.06l-2 2a.75.75 0 0 0 0 1.06l2 2a.75.75 0 1 0 1.06-1.06L5.06 7.5l1.47-1.47Z\"></path><path d=\"M12.246 13.307a7.501 7.501 0 1 1 1.06-1.06l2.474 2.473a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM1.5 7.5a6.002 6.002 0 0 0 3.608 5.504 6.002 6.002 0 0 0 6.486-1.117.748.748 0 0 1 .292-.293A6 6 0 1 0 1.5 7.5Z\"></path></svg> Advanced Security**.\n4. В разделе \"Dependabot\", справа от \"Dependabot version updates\", нажмите кнопку **\"Разрешить** Dependabot для запуска обновлений версий.\n\n## Получение обновлений для косвенных зависимостей\n\nПо умолчанию только прямые зависимости, явно определённые в манифесте, поддерживаются актуальными с помощью Dependabot version updates. Вы можете получать обновления для непрямых зависимостей, определенных в файлах блокировки. Дополнительные сведения см. в разделе [Управление обновлениями зависимостей с помощью Dependabot](/ru/code-security/dependabot/dependabot-version-updates/controlling-dependencies-updated#allowing-specific-dependencies-to-be-updated).\n\n## Обеспечение доступа к частным зависимостям\n\nПри обновлении системы безопасности или версий некоторые экосистемы должны иметь возможность разрешить все зависимости от источника, чтобы убедиться, что обновления успешно выполнены. Если файлы манифеста или блокировки содержат какие-либо частные зависимости, Dependabot должен иметь доступ к расположению, в котором размещаются эти зависимости. Владельцы организации могут предоставлять Dependabot доступ к частным репозиториям, содержащим зависимости для проекта, в той же организации. Дополнительные сведения см. в разделе [Управление параметрами безопасности и анализа для организации](/ru/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-security-and-analysis-settings-for-your-organization#allowing-dependabot-to-access-private-dependencies). Вы можете настроить доступ к частным реестрам в файле конфигурации репозитория `dependabot.yml` . Дополнительные сведения см. в разделе [Настройка доступа к частным реестрам для Dependabot](/ru/code-security/dependabot/working-with-dependabot/configuring-access-to-private-registries-for-dependabot).\n\nКроме того, Dependabot не поддерживает приватные GitHub зависимости для всех менеджеров пакетов. Дополнительные сведения см. в разделе \\[AUTOTITLE и [Поддерживаемые экосистемы и репозитории Dependabot](/ru/code-security/dependabot/ecosystems-supported-by-dependabot/supported-ecosystems-and-repositories)]\\(/get-started/learning-about-github/github-language-support).\n\n## Проверка состояния обновлений версий\n\nПосле включения обновлений версий на вкладке **Dependabot** в графе зависимостей для репозитория появляются сведения. На этой вкладке отображается информация о том, какие диспетчеры пакетов Dependabot отслеживаются и когда в последний раз была выполнена проверка новых версий Dependabot.\n\n![Снимок экрана: страница графа зависимостей. Вкладка с названием \"Dependabot\" выделена оранжевым контуром.](/assets/images/help/dependabot/dependabot-tab-view.png)\n\nДополнительные сведения см. в разделе [Перечисление зависимостей, настроенных для обновлений версий](/ru/code-security/dependabot/troubleshooting-dependabot/listing-dependencies-configured-for-version-updates).\n\n## Отключение Dependabot version updates\n\nВы можете полностью отключить обновления версий, удалив `dependabot.yml` файл из репозитория. Обычно требуется отключить обновления временно для одной или нескольких зависимостей или для одного или нескольких диспетчеров пакетов.\n\n* Для диспетчеров пакетов: отключите их, задав значение параметра `open-pull-requests-limit: 0` или закомментировав соответствующий раздел `package-ecosystem` в файле конфигурации.\n* Для конкретных зависимостей: отключите их, добавив атрибуты `ignore` для пакетов или приложений, которые требуется исключить из обновлений.\n\nПри отключении зависимостей можно использовать подстановочные знаки для сопоставления с набором связанных библиотек. Можно также указать, какие версии следует исключить. Это особенно удобно, если необходимо заблокировать обновления библиотеки, ожидая поддержки критических изменений в API библиотеки, но при этом требуется получать все исправления безопасности для используемой версии.\n\n### Пример отключения обновлений версий для некоторых зависимостей\n\nПриведенный ниже пример `dependabot.yml` файла содержит примеры различных способов отключения обновлений для некоторых зависимостей, позволяя другим обновлениям продолжаться.\n\n```yaml\n# `dependabot.yml` file with updates\n# disabled for Docker and limited for npm\n\nversion: 2\nupdates:\n  # Configuration for Dockerfile\n  - package-ecosystem: \"docker\"\n    directory: \"/\"\n    schedule:\n      interval: \"weekly\"\n      # Disable all pull requests for Docker dependencies\n    open-pull-requests-limit: 0\n\n  # Configuration for npm\n  - package-ecosystem: \"npm\"\n    directory: \"/\"\n    schedule:\n      interval: \"weekly\"\n    ignore:\n      # Ignore updates to packages that start with 'aws'\n      # Wildcards match zero or more arbitrary characters\n      - dependency-name: \"aws*\"\n      # Ignore some updates to the 'express' package\n      - dependency-name: \"express\"\n        # Ignore only new versions for 4.x and 5.x\n        versions: [\"4.x\", \"5.x\"]\n      # For all packages, ignore all patch updates\n      - dependency-name: \"*\"\n        update-types: [\"version-update:semver-patch\"]\n```\n\nДополнительные сведения о проверке существующих параметров пропуска см. в разделе [Справочник по параметрам зависимостей](/ru/code-security/dependabot/working-with-dependabot/dependabot-options-reference#ignore--)."}