Note
dotnetup はパブリック プレビュー段階です。 その機能と動作は、一般公開前に変更される可能性があります。
dotnetup では、 global.json を使用して SDK 要件をリポジトリまたはディレクトリ ツリーに関連付けます。 現在のディレクトリから各親ディレクトリを検索し、最も近い既存の global.jsonを読み取ります。
global.json からインストールする
チャネルを使用せずに SDK インストール コマンドを実行します。
dotnetup install
最も近い global.json に sdk.versionがある場合、 dotnetup はバージョンと rollForward 値からインストール仕様を派生させます。 ファイルへの完全パスを仕様ソースとして記録します。 現在のディレクトリまたはその親ディレクトリに global.json が存在しない場合、コマンドは latest チャネルを使用します。 最も近いファイルの形式が正しくないか、コメントが含まれている場合、解析は失敗します。 dotnetup では、そのファイルをスキップして親ディレクトリを検索することも、latest チャネルを使用することもありません。
rollForward マッピング
dotnetup
global.json SDK 選択ポリシーを更新可能なチャネルにマップします。
rollForward 値 |
SDK 用に保存された dotnetup の要件 10.0.103 |
|---|---|
省略またはlatestPatch |
10.0.1xx |
latestFeature |
10.0 |
latestMinor |
10 |
latestMajor |
latest |
disable、patch、feature、minor、または major |
10.0.103 |
正確なバージョンのマッピングはピン留めされており、更新によって変更されません。
allowPrerelease プロパティは、dotnetup が導出するチャネルには影響しません。
global.json からのインストール パス
sdk.pathsにエントリが含まれている場合、dotnetupは最初のパスを使用します。 相対パスは、 global.jsonを含むディレクトリから解決されます。
現在のパブリック プレビュー ビルドでは、 dotnetup は最初のエントリをパスとして扱います。
$host$をセンチネルとして解釈したり、空のエントリをスキップしたりすることはありません。
インストール パスの優先順位は次のとおりです。
-
--install-path。 - 最も近い
sdk.paths内の最初のglobal.jsonエントリ。 - dotnetup-managed の既定の .NET インストール ルート。
リポジトリ ファイルを最新の状態に保つ
sdk.versionをインストールまたは更新した具体的な SDK バージョンに置き換えるには、--update-global-jsonを渡します:
dotnetup install --update-global-json
dotnetup sdk update --update-global-json
global.json 由来の SDK 仕様のみが更新ワークフローによって更新されます。 修飾子は、他の JSON プロパティ、書式設定、および検出されたテキスト エンコードを保持します。
一致するリポジトリの要件を削除する
追跡対象の global.json 仕様は、ガベージ コレクション中に再読み込みされます。
ファイルが存在しなくなった場合、または SDK バージョンが含まれなくなった場合、仕様は削除されます。
チャネルごとに仕様を削除するには、globaljson ソースを選択します。 このコマンドは、1 つのリポジトリだけでなく、選択したインストール ルート内のすべての一致する仕様を削除します。
dotnetup sdk uninstall 10.0.1xx --source globaljson
dotnetup listを使用して、格納されているチャネル、ソース パス、およびインストール ルートを検索します。
--install-path を追加して、カスタム ルートを選択します。
参照
.NET