System Environment: Windows 7 Enterprise, Visual Studio 2012 , NuGet Package Manager 2.0
Defaultly the NuGet Package Manager downloads the packages into the ${SolutionDir}/packages. If we need to change the path, we can create a config file nuget.config in the solutionDir with the following contents:
<?xml version="1.0" encoding="utf-8"?>
<settings>
<repositoryPath>..\packages</repositoryPath>
</settings>
If enabled NuGet Package Restore (by click the menu in "PROJECT->Enable NuGet Package Restore", this sub-menu would disappear after clicked), VS creates an folder named ".nuget" in the solution folder, which contained 3 filesNuGet.exe, NuGet.Config and NuGet.targets.
In this situation, when build the solution, VS would create another packages in the solution folder. We can set the repositoryPath in the .nuget\NuGet.config file as below:
<configuration>
<solution>
<add key="disableSourceControlIntegration" value="true" />
</solution>
<config>
<add key="repositoryPath" value="../../packages"/>
</config>
</configuration>
make the repositoryPath value set in the above two config file refer to the same path, then there won't be two packages folder.