Unity 6.3
0 онлайн 104 гостей 3 в системе
Вход
Пакеты и управление пакетами Шаг 270 из 281

Настройка глобального кэша

Package Manager поддерживает глобальный кэш для сжатого содержимого пакетов и метаданных реестра.

Глобальный кэш отделен от кэша, который Package Manager поддерживает для пакетов ассетов. Сведения о кэше пакета ассетов см. в разделе Настройка местоположения кэша пакета активов.

По умолчанию корень глобального кэша Package Manager содержит следующие подкаталоги, каждый из которых служит для разных целей:

  • В подкаталоге db хранятся данные реестра (метаданные пакетов и тарбалы).
  • Если вы включили Git LFS, то в подкаталоге git-lfs хранятся загруженные файлы Git Large File Storage (LFS).

Примечание: Если вы создали проекты с Unity Editor 2023.2, ваш глобальный кэш может также иметь подкаталог packages. Начиная с Unity 6.0 Beta, Package Manager не использует этот подкаталог. Если вы больше не поддерживаете проекты, созданные с более старыми версиями Редактора, вы можете удалить этот подкаталог.

Package Manager хранит глобальный кэш в расположении по умолчанию, которое можно переопределить. О том, где по умолчанию находится корень глобального кэша, см. глобальный кэш.

Переопределить расположение глобального кэша может понадобиться по нескольким причинам:

  • Вы хотите сэкономить место на внутреннем накопителе.
  • Вы хотите хранить кэш на общем диске, чтобы другие пользователи могли получить к нему доступ.
  • Вы хотите хранить кэш в папке, которая не находится в системном каталоге.

Начиная с версии 2023.2.0f1, максимальный размер db подкаталог по умолчанию ограничен 10 гигабайтами (ГБ), и это значение можно переопределить. Переопределить максимальный размер db подкаталог по нескольким причинам:

  • Если у вас мало свободного места на диске, вы можете снизить ограничение, чтобы сэкономить место.
  • Если у вас много свободного места на диске, вы можете увеличить этот лимит. Это позволяет Package Manager хранить больше данных в кэше, так что он может получать пакеты из кэша вместо того, чтобы загружать их снова. Кэшированные пакеты устанавливаются быстрее и уменьшают использование сети.

В таблице ниже показаны разные способы переопределить свойства по умолчанию:

Метод Глобальное местоположение кэша db максимальный размер подкаталога Дополнительные примечания
Окно настроек Да Нет Этот метод рекомендуется из-за его простоты и постоянства. Когда вы изменяете местоположение кэша пакетов с помощью этого метода, Unity сохраняет предпочтения для текущей и будущих сессий Unity Editor.
Файл настройки пользователя Да Да Переопределения свойств кэша пакета в файле конфигурации пользователя сохраняются после текущего сеанса Unity Editor.
Переменные среды Да Да По умолчанию этот метод устанавливает конфигурацию для текущего сеанса командной строки (или терминала), но вы можете сделать его постоянным в настройках операционной системы. Продвинутые пользователи могут предпочитать переменные, основанные на сеансе, в конкретных случаях использования.

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

Важные примечания перед началом

  • Независимо от выбранного вами метода, изменение расположения кэша говорит Package Manager использовать это расположение в будущем. Существующие пакеты, которые Package Manager хранил в первоначальном расположении, остаются в этой структуре папок.
  • Если вы установили максимальный размер подкаталога db и новый размер меньше текущего размера этого подкаталога, Package Manager будет вытаскивать содержимое из кэша до тех пор, пока не будет достигнут новый предел. Package Manager вытаскивает сначала наименее использованное содержимое (на основе даты установки в проект).
  • При использовании файла конфигурации пользователя изменения применяются к текущей учетной записи пользователя. Хотя файл глобальной конфигурации существует, в нем нельзя задать переопределения кэша.
  • Существует несколько факторов, влияющих на совместную работу установки нескольких значений с помощью различных методов:
    • Если вы использовали метод переменной окружающей среды для изменения расположения кэша, то вы не можете использовать окно Настройки для изменения расположения.
    • Установка переменной среды имеет преимущество перед применением того же параметра в файле конфигурации пользователя или Предпочтения окно.
    • Если вы установили переменные среды для кэша Git LFS (UPM_GIT_LFS_CACHE_PATH), то Package Manager использует местоположение, указанное переменной среды, независимо от того, где находится корень глобального кэша.
    • Если вы включите кэш Git LFS (UPM_ENABLE_GIT_LFS_CACHE) без явного указания его пути (UPM_GIT_LFS_CACHE_PATH), Package Manager использует папку git-lfs в корне глобального кэша в качестве своего местоположения.

Использование окна Настройки

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

  1. Используйте один из следующих методов для открытия окна Настройки:

    • Используйте меню Unity Editor, как описано в Настройки.
    • Откройте окно Package Manager, откройте меню Больше (ru) и выберите Предпочтения.
  2. Выберите категорию Package Manager.

  3. В Пакетыоткройте меню папок рядом с Cache Location.

  4. Выберите Изменить местоположение.

  5. Выберите новое расположение для глобального кэша.

Окно Настройки с выбранной категорией Package Manager
Окно Настройки с выбранной категорией Package Manager

Использование файла конфигурации пользователя

Файл пользовательской конфигурации можно отредактировать вручную, чтобы переопределить расположение корня глобального кэша или максимальный размер db подкаталог или и то, и другое.

Чтобы изменить файл конфигурации пользователя, выполните следующие действия.

  1. Найдите файл конфигурации пользователя .upmconfig.toml. Чтобы найти расположение файла, см. Конфигурационные файлы. Если файла не существует, создайте пустой текстовый файл.

  2. Чтобы переопределить расположение корня глобального кэша, добавьте cacheRoot ключ и установить его значение как абсолютный путь к пользовательскому расположению. Важно: При установке Windows путей в TOML файлах, используйте прямые косые черты (/) или двойные обратные косые черты (\\). Не используйте одиночные обратные косинки (\) потому что это специальные символы, которые обозначают последовательности эвакуации и могут вызвать ошибки анализа TOML.

  3. Чтобы переопределить максимальный размер db подкаталог, добавьте maxCacheSize ключ и установить его значение на положительное целое число, представляющее количество байт. Например, чтобы установить размер на 5 GB, присвоить значение 5000000000.

Нет необходимости перезапускать Unity Editor или Hub после установки любого из свойств, чтобы изменения вступили в силу.

Windows пример

cacheRoot = "E:\\Unity\\cache"
maxCacheSize = 5000000000

macOS и Linux пример

cacheRoot = "/dev/external/shared/Unity/cache"
maxCacheSize = 5000000000

Использование переменных среды

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

Переменная окружающей среды Описание
UPM_CACHE_ROOT Укажите местонахождение глобальный кэш (корневая папка, содержащая данные реестра и кэши несжатых пакетов).
UPM_NPM_CACHE_PATH Вместо этого используйте UPM_CACHE_ROOT.
UPM_ENABLE_GIT_LFS_CACHE Укажите любое значение, кроме пустого (""), чтобы включить кэш Git LFS. По умолчанию Package Manager использует подкаталог git-lfs в корне глобального кэша, если только вы не укажете другой путь с помощью переменной среды UPM_GIT_LFS_CACHE_PATH.
UPM_GIT_LFS_CACHE_PATH Укажите абсолютный путь к расположению, где вы хотите, чтобы Package Manager хранил кэш Git LFS. Установив этот путь, вы автоматически включаете кэш Git LFS.
UPM_MAX_CACHE_SIZE Задайте максимальный размер кэша данных реестра (подкаталог db) в виде положительного целого числа в байтах. Например, чтобы установить размер на 5 GB, назначьте значение 5000000000.

Важно: При использовании этого метода следуйте следующим рекомендациям:

  • Закройте Unity Editor и Unity Hub, если они уже работают, прежде чем устанавливать переменные среды.
  • Запустите Unity Editor или Unity Hub из той же командной строки или сеанса терминала, где вы установили переменные среды.
  • Если вы установили какие-либо переменные среды в предыдущей таблице, вы должны устанавливать их каждый раз, когда запускаете Unity.

Сведения о настройке переменных среды см. в документации по операционной системе. Введение в переменные среды см. в https://en.wikipedia.org/wiki/Environment_variable.

Дополнительные ресурсы