将 %USERPROFILE%\.dotnet 和 .nuget 重新定位到非 OS 驱动器 dotnet core 2.0 预览版
Relocate %USERPROFILE%\.dotnet and .nuget to non-OS drive dotnet core 2.0 preview
问题
能否将文件夹 %USERPROFILE%\.dotnet
和 %USERPROFILE%\.nuget
重新定位到非 OS 驱动器(在我的例子中是 D: 驱动器)。
约束
- 我使用由我工作的组织提供的 VM; OS 驱动器中的 space 有限。
- 我们被要求将数据保存到另一个足够space并且可以扩展的驱动器。
- 我无法编辑系统环境变量。我只能 add/edit 用户范围/级别的环境变量。
执行的活动
我已经徒劳地尝试了以下建议 -
编辑 %APPDATA%\NuGet\NuGet.config
文件并更改键值 - CliFallbackFolder
和 globalPackagesFolder
.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
<add key="globalPackagesFolder" value="D:\nuget\packages" />
<add key="CliFallbackFolder" value="D:\dotnet\NuGetFallbackFolder" />
</packageSources>
</configuration>
一个。 CliFallbackFolder
的值在下次 运行 dotnet restore
时重置为 %USERPROFILE%\.dotnet
我已经定义了 NUGET_PACKAGES
环境变量 @ 用户范围并将其值设置为非 OS 驱动器。 **仅影响 .nuget 文件夹位置 **
我已经解决了这个问题并且已经看到了(问题仍然存在)-
一个。 https://github.com/dotnet/cli/issues/4003(关于 .dotnet 文件夹的问题没有得到回应)
b。 Is it possible to change the location of packages for NuGet?(关注 .nuget 文件夹而不是 .dotnet\CliNuGetFallbackFolderFallbackFolder)
在 github 中提出了一个问题。我意识到我在代码分支的预览 3 中提出问题时犯了一个错误。
我也意识到这更像是一个问题而不是一个问题,因此在这里发布了这个问题。 (https://github.com/dotnet/cli/issues/7256)
dotnet --info 输出
.NET 命令行工具 (2.0.0-preview2-006497)
产品信息:
版本:2.0.0-preview2-006497
提交 SHA-1 哈希:06a2093335
运行时环境:
OS 姓名:Windows
OS版本:6.1.7601
OS 平台:Windows
摆脱:win7-x64
基本路径:C:\Program Files\dotnet\sdk.0.0-preview2-006497\
Microsoft .NET Core 共享框架主机
版本:2.0.0-preview2-25407-01
构建:40c565230930ead58a50719c0ec799df77bddee9
dotnet nuget --version
NuGet 命令行
4.3.0.3
对于问题的第一部分 -
Can the folder %USERPROFILE%\.dotnet
be relocated to non-OS drive (in my case D: drive).
答案是
从 dotnet core 2.0.0-preview2-006497 开始,这是不可能的。有问题的文件夹是 SDK 的一部分,预计位于 %USERPROFILE%
目录中。
我仍然对上面列出的限制感到满意,至少在未来的版本中应该启用它是必不可少的。
仍然悬而未决的问题是
Can the folder %USERPROFILE%\.nuget
be relocated to non-OS drive (in my case D: drive).
请分享建议并注意已经采取的步骤,以尝试在第一个 post 中实现目标。
问题
能否将文件夹 %USERPROFILE%\.dotnet
和 %USERPROFILE%\.nuget
重新定位到非 OS 驱动器(在我的例子中是 D: 驱动器)。
约束
- 我使用由我工作的组织提供的 VM; OS 驱动器中的 space 有限。
- 我们被要求将数据保存到另一个足够space并且可以扩展的驱动器。
- 我无法编辑系统环境变量。我只能 add/edit 用户范围/级别的环境变量。
执行的活动
我已经徒劳地尝试了以下建议 -
编辑
%APPDATA%\NuGet\NuGet.config
文件并更改键值 -CliFallbackFolder
和globalPackagesFolder
.<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" /> <add key="globalPackagesFolder" value="D:\nuget\packages" /> <add key="CliFallbackFolder" value="D:\dotnet\NuGetFallbackFolder" /> </packageSources> </configuration>
一个。
CliFallbackFolder
的值在下次 运行 dotnet restore 时重置为 我已经定义了
NUGET_PACKAGES
环境变量 @ 用户范围并将其值设置为非 OS 驱动器。 **仅影响 .nuget 文件夹位置 **我已经解决了这个问题并且已经看到了(问题仍然存在)-
一个。 https://github.com/dotnet/cli/issues/4003(关于 .dotnet 文件夹的问题没有得到回应)
b。 Is it possible to change the location of packages for NuGet?(关注 .nuget 文件夹而不是 .dotnet\CliNuGetFallbackFolderFallbackFolder)
在 github 中提出了一个问题。我意识到我在代码分支的预览 3 中提出问题时犯了一个错误。 我也意识到这更像是一个问题而不是一个问题,因此在这里发布了这个问题。 (https://github.com/dotnet/cli/issues/7256)
%USERPROFILE%\.dotnet
dotnet --info 输出
.NET 命令行工具 (2.0.0-preview2-006497)
产品信息: 版本:2.0.0-preview2-006497 提交 SHA-1 哈希:06a2093335
运行时环境: OS 姓名:Windows OS版本:6.1.7601 OS 平台:Windows 摆脱:win7-x64 基本路径:C:\Program Files\dotnet\sdk.0.0-preview2-006497\
Microsoft .NET Core 共享框架主机 版本:2.0.0-preview2-25407-01 构建:40c565230930ead58a50719c0ec799df77bddee9
dotnet nuget --version
NuGet 命令行 4.3.0.3
对于问题的第一部分 -
Can the folder
%USERPROFILE%\.dotnet
be relocated to non-OS drive (in my case D: drive).
答案是
从 dotnet core 2.0.0-preview2-006497 开始,这是不可能的。有问题的文件夹是 SDK 的一部分,预计位于 %USERPROFILE%
目录中。
我仍然对上面列出的限制感到满意,至少在未来的版本中应该启用它是必不可少的。
仍然悬而未决的问题是
Can the folder
%USERPROFILE%\.nuget
be relocated to non-OS drive (in my case D: drive).
请分享建议并注意已经采取的步骤,以尝试在第一个 post 中实现目标。