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|--help
Description
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
--global
option - To update a global tool that was installed in a custom location, use the
--tool-path
option. - To update a local tool, use the
--local
option.
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-path
option. Omitting both--global
and--tool-path
specifies 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
--global
option or the--tool-path
option.--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
--global
option. Omitting both--global
and--tool-path
specifies 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
uninstall
newer versions first.Starting in .NET 8.0,
--version Major.Minor.Patch
refers 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.0
would 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