デフォルトでは、Package Manager はキャッシュに以下のフォルダー構造を使用します。
<global-cache-root>
├── npm
│ └── <registry data (package metadata and tarballs)>
├── packages
│ └── <uncompressed contents of package tarballs>
└── git-lfs (if enabled)
└── <downloaded Git LFS files>
Package Manager のグローバルのキャッシュルートのデフォルトの場所をオーバーライドするには、ユーザー環境設定ファイル の cacheRoot
プロパティを使用するか、UPM_CACHE_ROOT
環境変数 を設定します。
ノート: macOS と Linux システムでは、環境変数を使って Unity を起動することが難しい場合がるので、環境設定ファイルを使用する方法を検討してください。
環境変数 を設定することで、レジストリデータキャッシュ、圧縮されていないパッケージキャッシュ、Git LFS キャッシュをオーバーライドすることができます。ただし、環境変数と環境設定ファイルのプロパティは同じではありません。そのため、異なる方法で設定を行うと、予期しない結果になることがあります。
異なる方法で複数の値を設定することがどのように作用するか、に影響を与える要因はたくさんあります。
UPM_CACHE_ROOT
環境変数と cacheRoot
プロパティの両方でグローバルキャッシュルートに異なる値を設定する場合、Package Manager は UPM_CACHE_ROOT
環境変数の場所を使用します。UPM_NPM_CACHE_PATH
)、非圧縮パッケージキャッシュ (UPM_CACHE_PATH
)、または Git LFS キャッシュ (UPM_GIT_LFS_CACHE_PATH
) に環境変数を設定する場合、Package Manager は、グローバルキャッシュルートがどこにあるかにかかわらず、環境変数に指定された場所を使用します。UPM_GIT_LFS_CACHE_PATH
) を明示的に設定せずに Git LFS キャッシュ (UPM_ENABLE_GIT_LFS_CACHE
) を有効にすると、Package Manager は、グローバルキャッシュルートの下にある git-lfs
フォルダーをその場所として使用します。以下の手順で、グローバルのキャッシュルート の場所を上書きしてください。
.upmconfig.toml
ユーザー環境設定ファイルの場所を確認します。ファイルの場所を見つけるには、環境設定ファイル を参照してください。ファイルが存在しない場合は、空のテキストファイルを作成します。
cacheRoot
プロパティに絶対パスでカスタムの場所を設定します。以下はその例です。
cacheRoot = "/dev/external/shared/Unity/cache"
cacheRoot
プロパティを更新した後に、それを有効にするために Unity エディターや Hub を再起動する必要はありません。
環境変数を使用して、Package Manager の設定の一部を行うことができます。しかし、これらの設定を適用するためには、毎回これらの環境変数が定義され、エクスポートされるターミナルやコマンドプロンプトから 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 |
Package Manager がパッケージのメタデータと .tgz ファイルを保存する場所への絶対パスを指定します。デフォルトでは、グローバルキャッシュルートの下にある npm サブフォルダーです。 |
UPM_CACHE_PATH |
Package Manager がパッケージ .tgz ファイルの圧縮されていないコンテンツを保存する場所の絶対パスを指定します。デフォルトでは、グローバルキャッシュルートの下にある packages サブフォルダーです。 |
UPM_ENABLE_GIT_LFS_CACHE |
Git LFS キャッシュを有効にするには、空 ("") 以外の任意の値を指定します。デフォルトでは、Package Manager は、UPM_GIT_LFS_CACHE_PATH 環境変数を使用して別のパスを指定しない限り、グローバルキャッシュルート下の git-lfs サブフォルダーを使用します。 |
UPM_GIT_LFS_CACHE_PATH |
Package Manager が Git LFS キャッシュ を保存する場所の絶対パスを指定します。このパスを設定することにより、自動的に Git LFS キャッシュは有効になります。 |
Package Manager は 2 つの環境設定ファイルをサポートしています。グローバル環境設定ファイルとユーザー環境設定ファイルです。これらのファイルはどちらも、TOML 形式を使用しており、異なる場所に表示されます。
Package Manager は、upmconfig.toml
という名前のグローバルの環境設定ファイルを使用しています。
環境 | 場所 |
---|---|
Windows | %ALLUSERSPROFILE%\Unity\config\upmconfig.toml |
macOS と Linux | /etc/upmconfig.toml |
Package Manager は、.upmconfig.toml
という名前のユーザー環境設定ファイルを使用します。
環境 | 場所 |
---|---|
Windows (ユーザーアカウント) |
%USERPROFILE%\.upmconfig.toml (例えば、C:\Users\myusername\.upmconfig.toml ) |
Windows (システムユーザーアカウント) |
%ALLUSERSPROFILE%Unity\\Config\ServiceAccounts\.upmconfig.toml (例えば、C:ussers\Public\Unityconfig\ServiceAccounts\.upmconfig.toml ) |
macOS と Linux |
~/.upmconfig.toml (例えば、/Users/myusername/.upmconfig.toml ) |
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thank you for helping to make the Unity documentation better!
Your feedback has been submitted as a ticket for our documentation team to review.
We are not able to reply to every ticket submitted.