Version: 2021.3
言語: 日本語
スコープ付きレジストリ認証
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 環境変数 を設定します。

ノート: 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 フォルダーをその場所として使用します。

環境設定ファイルの使用

以下の手順で、グローバルのキャッシュルート の場所を上書きしてください。

  1. .upmconfig.toml ユーザー環境設定ファイルの場所を確認します。ファイルの場所を見つけるには、環境設定ファイル を参照してください。ファイルが存在しない場合は、空のテキストファイルを作成します。

  2. 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 形式を使用しており、異なる場所に表示されます。

  • グローバル 環境設定ファイルは、マシン上のすべてのユーザーに適用されます。例えば、マシン全体のプロキシサーバーを設定する際に、追加の SSL 認証局 を定義することができます。
  • ユーザー 環境設定ファイルは、1 人のユーザーに適用されます。例えば、認証トークン を設定して、スコープ付きレジストリでアクセスするカスタムパッケージのレジストリサーバーに使用します。これらのトークンは、特定のユーザーアカウントを認証します。

グローバルの環境設定ファイルの場所

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)



  • グローバルキャッシュルートの設定は、Unity 2021.2 では Package Manager 環境設定ファイルでサポートされるようになりましたNewIn20212
スコープ付きレジストリ認証
Package Manager ウィンドウ