n1ro°
RU

Документы · Инструкция

yarn workspaces list --since: изменённые workspaces в CI

--since превращает список workspaces в выборку относительно Git ref, что удобно для selective CI.

Редакция N1RO · Проверено

Короткий ответ

Как использовать yarn workspaces list --since в CI: получить изменённые workspaces относительно Git ref, включить JSON и учесть shallow checkout.

Что важно знать про yarn workspaces list --since

Без фильтров команда перечисляет все workspaces проекта; --since сужает список относительно ref или настроенных changesetBaseRefs. -v вместе с --json добавляет cross-dependencies, что полезно для автоматического построения графа задач. --no-private исключает private workspaces, а -R меняет способ обхода на dependency/devDependency graph.

Совет: Практический совет: Запустить yarn workspaces list --since <ref> на известном диапазоне изменений.

Чек-лист: получить список изменённых workspaces для CI

  • Исходная точка зафиксирована: проверить обычный yarn workspaces list и убедиться, что workspace layout определяется правильно.
  • Ключевое действие выполнено отдельно: запустить yarn workspaces list --since <ref> на известном диапазоне изменений.
  • Финальная проверка пройдена: перед selective deploy протестировать merge-коммит и shallow-clone сценарий, чтобы нужный ref действительно был доступен.
  • Для «получить список изменённых workspaces для CI» путь и ограничения сверены с «yarn workspaces list» (Yarn).

Как выполнить задачу: получить список изменённых workspaces для CI

  1. 1. Проверить обычный yarn workspaces list и убедиться, что workspace layout определяется правильно.
  2. 2. Запустить yarn workspaces list --since <ref> на известном диапазоне изменений.
  3. 3. Добавить --json для машинного разбора в CI.
  4. 4. Если нужен граф связей, использовать -v --json и проверить cross-dependencies.
  5. 5. Перед selective deploy протестировать merge-коммит и shallow-clone сценарий, чтобы нужный ref действительно был доступен.

Предупреждение: Осторожно: Не полагаться на --since в shallow checkout, если базовый ref не получен Git-ом.

Практическая проверка: получить список изменённых workspaces для CI

В терминале сначала проверить обычный yarn workspaces list и убедиться, что workspace layout определяется правильно и сохраните вывод команды. Затем запустить yarn workspaces list --since <ref> на известном диапазоне изменений; после этого не меняйте package.json, lockfile или CI-конфигурацию несколькими способами сразу. Шаг «добавить --json для машинного разбора в ci» должен дать проверяемый вывод: путь зависимости, список workspaces, audit report, checksum или расшифровку кода — в зависимости от команды. Если действует ограничение «не полагаться на --since в shallow checkout, если базовый ref не получен git-ом», остановите автоматическую правку и разберите причину.

Контрольные точки: получить список изменённых workspaces для CI

  • Старт. Проверить обычный yarn workspaces list и убедиться, что workspace layout определяется правильно. Получить корректную базу сравнения
  • Изменение. Запустить yarn workspaces list --since <ref> на известном диапазоне изменений. Проверить шаг для задачи «получить список изменённых workspaces для CI»
  • Контроль. Перед selective deploy протестировать merge-коммит и shallow-clone сценарий, чтобы нужный ref действительно был доступен. Подтвердить результат задачи «получить список изменённых workspaces для CI»

Ошибки при задаче «получить список изменённых workspaces для CI»

Не полагаться на --since в shallow checkout, если базовый ref не получен Git-ом. Не путать изменённые workspaces с автоматически затронутыми downstream-зависимостями — это зависит от вашей pipeline-логики. Не скрывать private workspaces, если они участвуют в сборке приложения.

Важно: Важно: Не путать изменённые workspaces с автоматически затронутыми downstream-зависимостями — это зависит от вашей pipeline-логики.

Что учитывать

Без фильтров команда перечисляет все workspaces проекта; --since сужает список относительно ref или настроенных changesetBaseRefs. -v вместе с --json добавляет cross-dependencies, что полезно для автоматического построения графа задач. --no-private исключает private workspaces, а -R меняет способ обхода на dependency/devDependency graph.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. yarn workspaces list). Пример и формулировки — редакция N1RO на 2026-09-22.