패키지 관리자는 레지스트리 데이터와 압축되지 않은 패키지에 대한 전역 캐시를 유지합니다.
전역 캐시는 패키지 관리자가 에셋 스토어 패키지에 대해 유지하는 캐시와 별개입니다. 에셋 스토어 캐시에 대한 자세한 내용은 에셋 스토어 캐시 위치 커스터마이즈를 참조하십시오.
기본적으로 패키지 관리자의 전역 캐시 루트에는 다음과 같은 하위 디렉토리가 있으며, 각 하위 캐시는 서로 다른 용도로 사용됩니다.
db
하위 디렉토리에는 레지스트리 데이터(패키지 메타데이터 및 타르볼)가 저장됩니다.packages
하위 디렉토리는 패키지 타르볼의 압축되지 않은 콘텐츠를 저장합니다.git-lfs
하위 디렉토리는 다운로드한 Git LFS(Large File Storage) 파일을 저장합니다.패키지 관리자는 전역 캐시를 기본 위치에 저장하며, 이 위치는 오버라이드가 가능합니다. 전역 캐시 루트의 기본 위치에 대한 자세한 내용은 전역 캐시를 참조하십시오.
다음과 같은 여러 이유로 전역 캐시 위치를 오버라이드해야 할 수 있습니다.
2023.2.0f1부터 db
하위 디렉토리의 최대 크기는 기본적으로 10GB이며, 이는 오버라이드가 가능합니다. 다음과 같은 여러 이유로 db
하위 디렉토리의 최대 크기를 오버라이드해야 할 수 있습니다.
다음 표는 기본 프로퍼티를 오버라이드하는 데 사용할 수 있는 여러 메서드를 보여 줍니다.
메서드 | 전역 캐시 위치 | db 하위 디렉토리 최대 크기 |
추가 참고 사항 |
---|---|---|---|
Preferences 창 | 지원 | 지원 안 함 | 이는 간편하고 영구적이라는 점에서 권장되는 메서드입니다. 이 메서드를 사용하여 패키지 캐시 위치를 변경하면 Unity는 현재 및 향후 Unity 에디터 세션에 대한 환경 설정을 저장합니다. |
사용자 설정 파일 | 지원 | 지원 | 사용자 설정 파일의 패키지 캐시 프로퍼티 오버라이드는 현재 Unity 에디터 세션 이후에도 유지됩니다. |
환경 변수 | 지원 | 지원 | 기본적으로 이 메서드는 현재 커맨드 프롬프트(또는 터미널) 세션에 대한 구성을 설정하지만 운영체제 설정에서 영구적으로 설정할 수 있습니다. 고급 사용자는 특정 사용 사례에서 세션 기반 변수를 선호할 수 있습니다. |
참고: Preferences 창을 사용하여 전역 캐시 위치를 설정하면 사용자 설정 파일에서 cacheRoot
프로퍼티도 설정됩니다. 사용자 설정 파일을 수동으로 설정하려면 사용자 설정 파일 사용을 참조하십시오.
db
하위 디렉토리의 최대 크기를 설정했는데 새 크기가 해당 하위 디렉토리의 현재 크기보다 작은 경우, 패키지 관리자는 새로운 제한에 도달할 때까지 캐시에서 콘텐츠를 제거합니다. 패키지 관리자는 가장 이전에 사용된 콘텐츠를 먼저 제거합니다(프로젝트에 설치한 날짜 기준).UPM_NPM_CACHE_PATH
), 압축되지 않은 패키지 캐시(UPM_CACHE_PATH
) 또는 Git LFS 캐시(UPM_GIT_LFS_CACHE_PATH
)에 대한 환경 변수를 설정하면 패키지 관리자는 전역 캐시 루트의 위치에 관계없이 환경 변수에서 지정하는 위치를 사용합니다.UPM_GIT_LFS_CACHE_PATH
)를 명시적으로 설정하지 않고 Git LFS 캐시(UPM_ENABLE_GIT_LFS_CACHE
)를 활성화하면 패키지 관리자는 전역 캐시 루트 아래의 git-lfs
폴더를 위치로 사용합니다.Preferences 창을 사용하여 전역 캐시의 기본 위치를 오버라이드하려면 다음 단계를 따르십시오.
다음 방법 중 하나를 사용하여 Preferences 창을 엽니다.
Package Manager 카테고리를 선택합니다.
Packages에서 Cache Location 옆에 있는 메뉴를 엽니다.
Change Location을 선택합니다.
전역 캐시의 새 위치를 선택합니다.
사용자 설정 파일을 수동으로 편집하여 전역 캐시 루트의 위치나 db
하위 디렉토리의 최대 크기 또는 둘 모두를 오버라이드할 수 있습니다.
다음 단계에 따라 사용자 설정 파일을 편집합니다.
.upmconfig.toml
사용자 설정 파일을 찾습니다.파일 위치를 찾으려면 설정 파일을 참조합니다.파일이 없는 경우 빈 텍스트 파일을 생성합니다.
전역 캐시 루트의 위치를 오버라이드하려면 cacheRoot
키를 추가하고 그 값을 커스텀 위치에 절대 경로로 설정합니다. 중요:TOML 파일에서 Windows 경로를 설정할 때는 슬래시(/
) 또는 더블 슬래시(\\
)를 사용하십시오.백슬래시(\
)는 이스케이프 시퀀스를 표시하는 특수 문자이므로 TOML 구문 분석 오류를 발생시킬 수 있는 백슬래시를 사용하지 마십시오.
db
하위 디렉토리의 최대 크기를 오버라이드하려면 maxCacheSize
키를 추가하고 그 값을 바이트 수를 나타내는 양의 정수로 설정합니다. 예를 들어 크기를 5GB로 설정하려면 5000000000
값을 할당합니다.
프로퍼티를 설정한 후 Unity 에디터 또는 허브를 다시 시작하지 않아도 변경 사항이 적용됩니다.
Windows 예시
cacheRoot = "E:\\Unity\\cache"
maxCacheSize = 5000000000
macOS 및 Linux 예시
cacheRoot = "/dev/external/shared/Unity/cache"
maxCacheSize = 5000000000
자동화나 CI(지속적 통합)와 관련된 시나리오에서는 사용자 설정 파일이나 Preferences 창에서 설정을 구성하는 것이 실용적이지 않고 오류가 발생하기 쉽습니다.이러한 시나리오에서는 환경 변수를 사용하여 전역 캐시와 하위 캐시에 대한 설정을 구성하는 것이 좋습니다.다음 환경 변수를 사용할 수 있습니다.
환경 변수 | 설명 |
---|---|
UPM_CACHE_ROOT |
전역 캐시(레지스트리 데이터와 압축되지 않은 패키지 캐시가 포함된 루트 폴더)의 위치를 지정합니다. |
UPM_NPM_CACHE_PATH |
패키지 관리자가 레지스트리 데이터 캐시에 사용하도록 할 위치에 절대 경로를 지정합니다. 기본적으로 이는 전역 캐시 루트 아래의 db 하위 디렉토리입니다. |
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 캐시가 자동으로 활성화됩니다. |
UPM_MAX_CACHE_SIZE |
레지스트리 데이터 캐시(db 하위 디렉토리)의 최대 크기를 양의 정수 바이트로 지정합니다. 예를 들어 크기를 5GB로 설정하려면 5000000000 값을 할당합니다. |
중요:이 방법을 사용할 때는 다음 가이드라인을 따르십시오.
환경 변수 설정에 대한 내용은 운영체제의 문서를 참조하십시오.환경 변수에 대한 소개는 https://en.wikipedia.org/wiki/Environment_variable을 참조하십시오.