Кратко

  • GitHub описывает архив как режим только для чтения и указание на отсутствие активной поддержки; репозиторий можно разархивировать.
  • Этот факт относится к репозиторию на GitHub, а не к версии, артефакту, развертыванию или решению конкретного потребителя.
  • Наблюдение за архивом и местное решение о замене, сохранении или выводе должны иметь отдельные источники и владельцев.

Метка сообщает ровно о своей поверхности

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

В документации GitHub об архивировании репозиториев граница названа явно. Issues, pull requests, код, labels, milestones, projects, wiki, releases, commits, tags, branches, реакции, alerts сканирования кода, комментарии и permissions становятся доступными только для чтения. GitHub говорит, что архив указывает на отсутствие активного сопровождения; чтобы что-либо изменить, репозиторий надо разархивировать.

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

Решение имеет другой предмет и другого носителя риска

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

Следовательно, архив — вход для проверки, а не ее результат. Проверка может показать отсутствие соответствующего используемого артефакта. Она может привести к запланированной замене, ограниченному исключению, изоляции, наблюдению или честному состоянию «решение еще не принято». Ни один вариант не следует из значка автоматически. Если же статус записать как «выведено из эксплуатации», исчезают и автор решения, и его основания.

Другие операции GitHub подтверждают необходимость различать объекты. Передача репозитория меняет администратора и имеет свои последствия. Изменение видимости отдельно влияет на доступ и forks. Ни одно из этих действий не образует инвентаризацию зависимостей у третьей стороны.

Две связанные, но не слитые записи

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

Вторая запись принадлежит потребителю. Она связывает пакет, commit или digest с фактическим применением, собранными доказательствами, владельцем решения, действием либо осознанным бездействием и триггером пересмотра. Такое разделение не навязывает единую политику. Оно не позволяет короткой метке получить полномочие, которого в ней нет.

Источники

  1. GitHub Docs — Archiving repositories
  2. GitHub Docs — Transferring a repository
  3. GitHub Docs — Setting repository visibility