По умолчанию диспетчер пакетов использует следующую структуру папок для своих кешей:
├── npm
│ └── <registry data (package metadata and tarballs)>
├── packages
│ └── <uncompressed contents of package tarballs>
└── git-lfs (if enabled)
└── <downloaded Git LFS files>
Чтобы переопределить расположение корня глобального кэша диспетчера пакетов по умолчанию, вы можете использовать свойство cacheRoot
в файле конфигурации пользователя или задайте UPM_CACHE_ROOT
переменную среды.
Примечание. Для систем macOS и Linux рассмотрите возможность использования стратегии файла конфигурации для систем macOS и Linux, поскольку запуск Unity с переменными среды в этих системах может быть затруднен.
Вы также можете настроить переменные среды, чтобы переопределить кеш данных реестра, кеш несжатых пакетов и кеш Git LFS. Однако значения среды и свойства файла конфигурации не эквивалентны, поэтому использование разных методов настройки параметров может привести к неожиданным результатам.
Существует множество факторов, влияющих на совместную установку нескольких значений разными методами:
- Если вы задали разные значения для корня глобального кэша как с переменной среды
UPM_CACHE_ROOT
, так и со свойствомcacheRoot
, диспетчер пакетов использует расположение в переменной средыUPM_CACHE_ROOT
. - Если вы задали переменную среды для кэша данных реестра (
UPM_NPM_CACHE_PATH
), кэш несжатых пакетов (UPM_CACHE_PATH
), или кеш Git LFS (UPM_GIT_LFS_CACHE_PATH
), диспетчер пакетов использует расположение, указанное переменной среды, независимо от того, где находится корень глобального кеша. - При использовании файла конфигурации пользователя изменение применяется к текущей учетной записи пользователя.
- Если вы включите кеш Git LFS (
UPM_ENABLE_GIT_LFS_CACHE
) без явного указания пути к нему (UPM_GIT_LFS_CACHE_PATH
), диспетчер пакетов использует Папкаgit-lfs
в корневом каталоге глобального кеша в качестве его местоположения.
Использование файла конфигурации
Следуйте этим инструкциям, чтобы переопределить расположение корня глобального кэша:
Найдите файл конфигурации пользователя
.upmconfig.toml
. Чтобы узнать расположение файла, см. раздел Файлы конфигурации. Если файл не существует, создайте пустой текстовый файл.-
Задайте для свойства
cacheRoot
пользовательское местоположение с абсолютным путем. Например:cacheRoot = "/dev/external/shared/Unity/cache"
Вам не нужно перезапускать редактор Unity или Hub после обновления свойства cacheRoot
, чтобы они вступили в силу.
Using environment variables
Вы можете использовать переменные среды для настройки нескольких параметров диспетчера пакетов. Однако для того, чтобы эти настройки применялись, вы должны запускать Unity или Hub из терминала или командной строки, где эти переменные среды каждый раз определяются и экспортируются.
Например, вы можете запустить эти команды в терминале macOS или Linux, чтобы настроить расположение корня глобального кэша и включить кэш Git LFS:
# On macOS/Linux:
export UPM_CACHE_ROOT=/dev/ssd/shared/Unity/cache
export UPM_ENABLE_GIT_LFS_CACHE=true
echo "Launching Unity with the Git LFS cache enabled and using this global cache location: '$UPM_CACHE_ROOT'"
"/Applications/Unity Hub.app/Contents/MacOS/Unity Hub"
В этом примере для Windows настраивается расположение корневого каталога глобального кеша и кеша Git LFS:
# On Windows:
set UPM_CACHE_ROOT=%ALLUSERSPROFILE%\Unity\cache
set UPM_GIT_LFS_CACHE_PATH=%ALLUSERSPROFILE%\repos\caches\lfs
echo "Launching Unity with this global cache location: '%UPM_CACHE_ROOT%'"
echo "... and this Git LFS cache location: '%UPM_GIT_LFS_CACHE_PATH%'"
"C:\Program Files\Unity Hub\Unity Hub.exe"
Доступны следующие переменные среды:
Переменная среды: | Описание: |
---|---|
UPM_CACHE_ROOT |
Укажите расположение глобального кэша (корневая папка, содержащая данные реестра и кэши несжатых пакетов). |
UPM_NPM_CACHE_PATH |
Укажите абсолютный путь к месту, где вы хотите, чтобы диспетчер пакетов хранил метаданные пакетов и tar-архивы. По умолчанию это подпапка npm в корневом каталоге глобального кеша. |
UPM_CACHE_PATH |
Укажите абсолютный путь к месту, где вы хотите, чтобы диспетчер пакетов сохранял несжатое содержимое архивов пакетов. По умолчанию это подпапка packages в корневом каталоге глобального кэша. |
UPM_ENABLE_GIT_LFS_CACHE |
Укажите любое значение, кроме пустого (""), чтобы включить кеш Git LFS. По умолчанию диспетчер пакетов использует подпапку git-lfs в корневом каталоге глобального кэша, если вы не укажете другой путь с помощью UPM_GIT_LFS_CACHE_PATH . переменная окружения. |
UPM_GIT_LFS_CACHE_PATH |
Укажите абсолютный путь к месту, где вы хотите, чтобы Менеджер пакетов сохранял кеш Git LFS. Установив этот путь, вы автоматически включаете кеш Git LFS. |
Диспетчер пакетов поддерживает два файла конфигурации: глобальный файл конфигурации и файл конфигурации пользователя. Оба этих файла используют формат TOML и находятся в разных местах:
- Глобальные файлы конфигурации применяются ко всем пользователям на компьютере. Например, вы можете определить дополнительные центры сертификации SSL при настройке прокси-сервера для всей машины. Файлы конфигурации
- Пользователь применяются к одному пользователю. Например, вы можете настроить токены аутентификации для использования на настраиваемых серверах реестра пакетов, к которым вы обращаетесь с помощью реестров с ограниченной областью действия. Эти токены аутентифицируют конкретный аккаунт пользователя.
Глобальное расположение файла конфигурации
Диспетчер пакетов использует глобальный файл конфигурации с именем upmconfig.toml
, который можно найти здесь:
Окружающая среда: | Местоположение: |
---|---|
Windows | %ALLUSERSPROFILE%\Unity\config\upmconfig.toml |
macOS and Linux | /etc/upmconfig.toml |
Расположение файла конфигурации пользователя
Диспетчер пакетов использует файл конфигурации пользователя с именем .upmconfig.toml
, который можно найти здесь:
Окружающая среда: | Местоположение: |
---|---|
Windows (user account) |
%USERPROFILE%\.upmconfig.toml (for example, C:\Users\myusername\.upmconfig.toml ) |
Windows (system user account) |
%ALLUSERSPROFILE%\Unity\config\ServiceAccounts\.upmconfig.toml (for example, C:\Users\Public\Unity\config\ServiceAccounts\.upmconfig.toml ) |
macOS and Linux |
~/.upmconfig.toml (for example, /Users/myusername/.upmconfig.toml ) |
- Установка корня глобального кеша теперь поддерживается в файлах конфигурации диспетчера пакетов в Unity.