dotnet-tool-update - Man Page
Updates the specified .NET tool on your machine.
dotnet tool update
This article applies to: ✔️ .NET Core 3.1 SDK and later versions
Synopsis
dotnet tool update <PACKAGE_ID> -g|--global
[--add-source <SOURCE>] [--allow-downgrade]
[--configfile <FILE>]
[--disable-parallel] [--framework <FRAMEWORK>]
[--ignore-failed-sources] [--interactive]
[--no-cache] [--prerelease]
[-v|--verbosity <LEVEL>] [--version <VERSION>]
dotnet tool update <PACKAGE_ID> --tool-path <PATH>
[--add-source <SOURCE>] [--allow-downgrade]
[--configfile <FILE>]
[--disable-parallel] [--framework <FRAMEWORK>]
[--ignore-failed-sources] [--interactive]
[--no-cache] [--prerelease]
[-v|--verbosity <LEVEL>] [--version <VERSION>]
dotnet tool update <PACKAGE_ID> --local
[--add-source <SOURCE>] [--allow-downgrade]
[--configfile <FILE>]
[--disable-parallel] [--framework <FRAMEWORK>]
[--ignore-failed-sources] [--interactive]
[--no-cache] [--prerelease]
[--tool-manifest <PATH>]
[-v|--verbosity <LEVEL>] [--version <VERSION>]
dotnet tool update -h|--helpDescription
The dotnet tool update command provides a way for you to update .NET tools on your machine to the latest stable version of the package. The command uninstalls and reinstalls a tool, effectively updating it. To use the command, you specify one of the following options:
- To update a global tool that was installed in the default location, use the
--globaloption - To update a global tool that was installed in a custom location, use the
--tool-pathoption. - To update a local tool, use the
--localoption.
Arguments
PACKAGE_ID
Name/ID of the NuGet package that contains the .NET global tool to update. You can find the package name using the dotnet tool list command.
Options
--add-source <SOURCE>
Adds an additional NuGet package source to use during installation. Feeds are accessed in parallel, not sequentially in some order of precedence. If the same package and version is in multiple feeds, the fastest feed wins. For more information, see What happens when a NuGet package is installed?.
--allow-downgrade
Allow package downgrade when installing or updating a .NET tool package. Suppresses the warning, “The requested version x.x.x is lower than existing version x.x.x.”
--configfile <FILE>
The NuGet configuration file (nuget.config) to use. If specified, only the settings from this file will be used. If not specified, the hierarchy of configuration files from the current directory will be used. For more information, see Common NuGet Configurations.
--disable-parallel
Prevent restoring multiple projects in parallel.
--framework <FRAMEWORK>
Specifies the target framework to update the tool for.
-g|--global
Specifies that the update is for a user-wide tool. Can’t be combined with the
--tool-pathoption. Omitting both--globaland--tool-pathspecifies that the tool to be updated is a local tool.-?|-h|--help
Prints out a description of how to use the command.
--ignore-failed-sources
Treat package source failures as warnings.
--interactive
Allows the command to stop and wait for user input or action. For example, to complete authentication.
--local
Update the tool and the local tool manifest. Can’t be combined with the
--globaloption or the--tool-pathoption.--no-cache
Do not cache packages and HTTP requests.
--prerelease
Include prerelease versions.
--tool-manifest <PATH>
Path to the manifest file.
--tool-path <PATH>
Specifies the location where the global tool is installed. PATH can be absolute or relative. Can’t be combined with the
--globaloption. Omitting both--globaland--tool-pathspecifies that the tool to be updated is a local tool.-v|--verbosity <LEVEL>
Sets the verbosity level of the command. Allowed values are
q[uiet],m[inimal],n[ormal],d[etailed], anddiag[nostic]. For more information, see <xref:Microsoft.Build.Framework.LoggerVerbosity>.--version <VERSION>
The version range of the tool package to update to. This cannot be used to downgrade versions, you must
uninstallnewer versions first.Starting in .NET 8.0,
--version Major.Minor.Patchrefers to a specific major.minor.patch version, including unlisted versions. To get the latest version of a certain major.minor version instead, use--version Major.Minor.*.
Examples
dotnet tool update -g dotnetsay
Updates the dotnetsay (https://www.nuget.org/packages/dotnetsay/) global tool.
dotnet tool update dotnetsay --tool-path c:\global-tools
Updates the dotnetsay (https://www.nuget.org/packages/dotnetsay/) global tool located in a specific Windows directory.
dotnet tool update dotnetsay --tool-path ~/bin
Updates the dotnetsay (https://www.nuget.org/packages/dotnetsay/) global tool located in a specific Linux/macOS directory.
dotnet tool update dotnetsay
Updates the dotnetsay (https://www.nuget.org/packages/dotnetsay/) local tool installed for the current directory.
dotnet tool update -g dotnetsay --version 2.0.*
Updates the dotnetsay (https://www.nuget.org/packages/dotnetsay/) global tool to the latest patch version, with a major version of
2, and a minor version of0.dotnet tool update -g dotnetsay --version (2.0.*,2.1.4)
Updates the dotnetsay (https://www.nuget.org/packages/dotnetsay/) global tool to the lowest version within the specified range
(> 2.0.0 && < 2.1.4), version2.1.0would be installed. For more information on semantic versioning ranges, see NuGet packaging version ranges.
See Also
- .NET tools
- Semantic versioning (https://semver.org)
- Tutorial: Install and use a .NET global tool using the .NET CLI
- Tutorial: Install and use a .NET local tool using the .NET CLI