You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The NuGet CLI [restore](../../reference/cli-reference/cli-ref-restore.md) command downloads and installs any missing packages. The command works on projects that use either [PackageReference](/nuget/consume-packages/package-references-in-project-files) or [packages.config](/nuget/reference/packages-config) for package references.
2
2
3
-
Like `install`, the `restore` command only adds packages to disk, but doesn't modify the project file or *packages.config*. To add project dependencies, use the Visual Studio Package Manager UI or Console.
3
+
Like `install`, the `restore` command only adds packages to disk. It doesn't modify the project file or *packages.config* file. To add project dependencies, use the Visual Studio Package Manager UI or console.
4
4
5
5
To restore packages, run the following command:
6
6
7
7
```cli
8
-
nuget restore <projectPath>
8
+
nuget restore <project-path>
9
9
```
10
10
11
11
The `restore` command uses a solution file or a *package.config* file in the specified project path.
12
12
13
-
For example, to restore all packages for *MySolution.sln* in the current directory, run:
13
+
For example, to restore all packages for *MySolution.slnx* in the current directory, run the following command:
14
14
15
15
```cli
16
-
nuget restore MySolution.sln
16
+
nuget restore MySolution.slnx
17
17
```
18
18
19
19
> [!NOTE]
20
20
> For non-SDK-style projects that use `PackageReference`, use [msbuild -t:restore](../package-restore.md#restore-using-msbuild) to restore packages instead.
Copy file name to clipboardExpand all lines: docs/consume-packages/install-use-packages-nuget-cli.md
+23-21Lines changed: 23 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
title: Manage NuGet packages with the NuGet CLI
2
+
title: Manage NuGet Packages with the NuGet CLI
3
3
description: Instructions for using the NuGet CLI, nuget.exe, to manage NuGet packages.
4
4
author: mikejo5000
5
5
ms.author: mikejo
@@ -9,25 +9,25 @@ ms.topic: how-to
9
9
10
10
# Manage NuGet packages with the NuGet CLI
11
11
12
-
You can use the `nuget.exe`CLI tool to manage NuGet packages in Visual Studio projects and solutions. This article describes the most common NuGet CLI commands for managing NuGet packages. All these commands work on Windows, and most work on Mac and on Linux with Mono.
12
+
You can use the `nuget.exe`command-line interface (CLI) to manage NuGet packages in Visual Studio projects and solutions. This article describes the most common NuGet CLI commands for managing NuGet packages. All these commands work on Windows, and most work on Mac and on Linux with Mono.
13
13
14
14
The NuGet CLI runs on .NET Framework and non-SDK-style projects, for example non-SDK style projects that target .NET Standard libraries. The NuGet CLI commands can use a project [packages.config](../reference/packages-config.md) file that lists package references. For non-SDK-style projects that use `PackageReference` instead of *packages.config* for package references, use the [dotnet CLI](install-use-packages-dotnet-cli.md) instead.
15
15
16
16
> [!NOTE]
17
-
> For most non-SDK-style projects that use *packages.config*, it's best to [migrate packages.config to PackageReference](migrate-packages-config-to-package-reference.md), and then use the dotnet CLI instead of the NuGet CLI to manage packages. However, you can't migrate C++ or ASP.NET projects.
17
+
> For most non-SDK-style projects that use *packages.config*, it's best to [migrate packages.config to `PackageReference`](migrate-packages-config-to-package-reference.md), and then use the dotnet CLI instead of the NuGet CLI to manage packages. However, you can't migrate C++ or ASP.NET projects.
18
18
19
-
For most commands, the NuGet CLI tool uses the current directory, unless you specify a different location in the command. To run NuGet CLI commands, open a commandline and switch to the directory that contains your project file.
19
+
For most commands, the NuGet CLI tool uses the current directory, unless you specify a different location in the command. To run NuGet CLI commands, open a command-line program and switch to the directory that contains your project file.
20
20
21
-
For a complete list of commands and their arguments, see the [NuGet CLI reference](../reference/nuget-exe-cli-reference.md).
21
+
For a complete list of commands and their arguments, see [NuGet CLI reference](../reference/nuget-exe-cli-reference.md).
22
22
23
23
## Prerequisites
24
24
25
-
Download the NuGet CLI from [nuget.org](https://dist.nuget.org/win-x86-commandline/latest/nuget.exe). Save the *nuget.exe* file to a suitable directory, and make sure the directory is in your PATH environment variable.
25
+
Download the NuGet CLI from [nuget.org](https://dist.nuget.org/win-x86-commandline/latest/nuget.exe). Save the *nuget.exe* file to a suitable directory, and make sure the directory is in your `PATH` environment variable.
26
26
27
27
> [!NOTE]
28
28
> You can also use the [winget](/windows/package-manager/winget) tool for Windows or [Homebrew](https://brew.sh/) for macOS.
29
29
30
-
To find out your NuGet CLI version, open a commandline and run `nuget help`, or to avoid having to scroll up, use `nuget help | more`. The first line in the help output shows the version.
30
+
To find out your NuGet CLI version, open a command-line program and run `nuget help`. Or to avoid having to scroll up, use `nuget help | more`. The first line in the help output shows the version.
31
31
32
32
## Install a package
33
33
@@ -39,22 +39,22 @@ The NuGet CLI [install](../reference/cli-reference/cli-ref-install.md) command d
39
39
Use the `-OutputDirectory` option to install packages to a specific directory. If you don't specify an output directory, `install` uses the current directory.
Instead of specifying a package to install, you can specify an existing *packages.config* file in the current or another directory. The `install` command installs all the packages listed in the *packages.config* file.
51
+
Instead of specifying a package to install, you can specify an existing *packages.config* file in the current directory or another directory. The `install` command installs all the packages listed in the *packages.config* file.
52
52
53
53
```cli
54
54
nuget install packages.config
55
55
```
56
56
57
-
For example, the following command installs all the packages listed in *packages.config* in the *config* subdirectory to the *packages*subdirectory:
57
+
For example, the following command installs all the packages listed in *packages.config* in the *config* subdirectory of the current directory. The command installs the packages in the *packages*directory.
The `install` command installs the latest version of a package unless you specify a different version. To install a specific version of a package, use the `-Version` option:
Use the [list](../reference/cli-reference/cli-ref-list.md) command to display a list of packages installed in the packages folders. Use the `-Source` option to restrict the list.
80
+
Use the [search](../reference/cli-reference/cli-ref-search.md) command to display basic information about packages at a specified source.
81
81
82
82
```cli
83
-
nuget list -Source <source>
83
+
nuget search -Source <source>
84
84
```
85
85
86
-
For example, to list packages in the *packages* subdirectory of *MyProject*, use:
86
+
For example, to list packages in the *packages* subdirectory of *MyProject*, use the following command:
87
87
88
88
```cli
89
-
nuget list -Source C:\Users\%USERNAME%\source\repos\MyProject\packages
You can also use a search term to search for package names, tags, or descriptions:
92
+
You can also specify search terms to limit the results by package names, tags, or descriptions:
93
93
94
94
```cli
95
-
nuget list <"search term"> -Source <source>
95
+
nuget list <search-terms> -Source <source>
96
96
```
97
97
98
98
## Update all packages
99
99
100
-
Use the [update](../reference/cli-reference/cli-ref-update.md) command to update all packages in a project *packages.config* file to their latest available versions. It's best to run `restore` before you run `update`.
100
+
Use the [update](../reference/cli-reference/cli-ref-update.md) command to update all packages in a project *packages.config* file to their latest available versions. For `<configuration-file-path>`, use the path to your *packages.config* file.
101
101
102
102
```cli
103
-
nuget update
103
+
nuget update <configuration-file-path>
104
104
```
105
105
106
+
It's best to run `restore` before you run `update`. Then the `update` command has information about the package versions that are in use. That information helps it resolve dependencies correctly.
107
+
106
108
## Remove a package
107
109
108
110
To remove a package, delete that package from the project folder. To reinstall packages, use the `restore` or `install` commands.
109
111
110
-
Deleting packages from disk doesn't update the project, *packages.config*, or *NuGet.Config* files. The best way to remove packages is through the Visual Studio [Package Manager UI](install-use-packages-visual-studio.md) or [Package Manager Console](install-use-packages-powershell.md).
112
+
Deleting packages from disk doesn't update the project, *packages.config*, or *NuGet.Config* files. The best way to remove packages is by using the Visual Studio [Package Manager UI](install-use-packages-visual-studio.md) or [Package Manager Console](install-use-packages-powershell.md).
0 commit comments