このセクションでは、Package Manager の以下の設定方法について説明します。
また、Package Manager の設定ファイルの場所は、コンフィギュレーションファイル で確認できます。
デフォルトでは、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
環境変数 を設定します。
ノート: Windows 以外の環境では、環境変数を使って Unity を起動することが難しい場合がるので、macOS や Linux システムでは、コンフィギュレーションファイルを使用する方法を検討してください。
環境変数 を設定することで、レジストリデータキャッシュ、圧縮されていないパッケージキャッシュ、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_NPM_CACHE_PATH=/dev/ssd/shared/Unity/cache/npm
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:
@echo off
set UPM_CACHE_ROOT=%ALLUSERSPROFILE%\Unity\config
echo "Launching Unity with this global cache location: '%UPM_CACHE_ROOT%'"
"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_GIT_LFS_CACHE_PATH |
Package Manager が Git LFS キャッシュ を保存する場所の絶対パスを指定します。このパスを設定することにより、自動的に Git LFS キャッシュは有効になります。 |
UPM_ENABLE_GIT_LFS_CACHE |
Git LFS キャッシュを有効にするには、空 ("" ) 以外の任意の値を指定します。Package Manager は、グローバルキャッシュルート下の 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.