mac命令行怎么找的软件位置 常见的 NuGet 配置

配置文件的位置和使用范围NuGet.及更高版本)将以无提示方式忽略整个配置文件。操作,并且优先应用“最靠近”项目或当前文件夹的设置。也就是说,“最靠近”当前文件夹或项目的设置将替代之前找到的任何其他设置。设置存在于任何其他配置文件中,则此设置将被替代。将按如下方式加载和应用设置,具体取决于调用设置的位置:添加了对其他用户范围配置文件的支持。子文件夹内的标准用户范围配置文件夹中。...

常见的 NuGet 配置

谢谢。

本文内容

NuGet 的行为由一个或多个 NuGet 中的累积设置驱动。(XML) 文件,可以存在于项目范围、用户范围和计算机范围级别。还可以使用全局 .file 专门配置包源。这些设置适用于在 CLI、包管理器控制台和包管理器 UI 中发出的所有命令。

配置文件 NuGet 的位置和范围。文件位置说明

解决方案

当前文件夹(又名解决方案文件夹)或驱动器根目录之前的任何文件夹。

在解决方案文件夹中,设置适用于子文件夹中的所有项目。请注意,如果配置文件位于项目文件夹中,则不会影响该项目。

用户

mac/Linux: 或 ~/.nuget/NuGet/NuGet。(因操作系统分布而异)

所有平台都支持其他配置。这些配置无法通过该工具进行编辑。

%%\NuGet\\*.

mac/Linux: 或 ~/.nuget//*。

该设置适用于所有操作,但可以被任何项目级设置覆盖。

mac/Linux:. 如果 $ 的值为 null 或为空,将使用 ~/.local/share 或 /usr/local/share(取决于操作系统版本)

设置虽然适用于计算机上的所有操作,但会被任何用户级或项目级设置覆盖。

NuGet 早期版本的说明:

更改配置设置

NuGet。文件是包含键/值对的简单 XML 文本文件,请参阅 NuGet。话题。

设置通过 NuGet CLI 命令进行管理:

警告

尽管您可以在任何文本编辑器中修改文件,但如果配置文件包含格式错误的 XML(标签不匹配、引号无效等),NuGet(v3.4.3 及更高版本)将静默忽略整个配置文件。因此建议使用 nuget 来管理设置。

设置

# Set repositoryPath in the user-level config file
nuget config -set repositoryPath=c:\packages 
# Set repositoryPath in project-level files
nuget config -set repositoryPath=c:\packages -configfile c:\my.Config
nuget config -set repositoryPath=c:\packages -configfile .\myApp\NuGet.Config
# Set repositoryPath in the computer-level file (requires elevation)
nuget config -set repositoryPath=c:\packages -configfile %ProgramFiles(x86)%\NuGet\Config\NuGet.Config

mac/Linux:

# Set repositoryPath in the user-level config file
nuget config -set repositoryPath=/home/packages 
# Set repositoryPath in project-level files
nuget config -set repositoryPath=/home/projects/packages -configfile /home/my.Config
nuget config -set repositoryPath=/home/packages -configfile home/myApp/NuGet.Config
# Set repositoryPath in the computer-level file (requires elevation)
nuget config -set repositoryPath=/home/packages -configfile $XDG_DATA_HOME/NuGet.Config

注意

在 NuGet 3.4 及更高版本中,环境变量可以用于任何值,类似于 =%%() 和 =$(mac/Linux)。

删除值

要删除一个值,请指定一个具有空值的键。

# Windows
nuget config -set repositoryPath= -configfile c:\my.Config
# Mac/Linux
nuget config -set repositoryPath= -configfile /home/my.Config

创建一个新的配置文件

将下面的模板复制到一个新文件中,然后使用 nuget - 设置值:

<?xml version="1.0" encoding="utf-8"?>


如何应用设置

多个 NuGet .file 可用于将设置存储在不同位置,以便将设置应用于单个项目、一组项目或所有项目。这些设置共同适用于从命令行调用的任何 NuGet 操作,或者“最接近”项目或当前文件夹的设置优先。

mac命令行怎么找的软件位置_行调发布的口头命令_sed 命令 删除 包含 行

具体来说墨语涂鸦,NuGet 将按以下顺序从不同的配置文件中加载设置:

,其中仅包含与包源相关的设置。计算机级文件。用户级文件。使用 - 指定文件。在从驱动器根目录到当前文件夹(调用 nuget.exe 的位置或包含项目的文件夹)的路径中的每个文件夹中找到的文件。例如,如果您在 c:\A\B\C 中调用命令,NuGet 将在 c:\ 中查找并加载配置文件,然后是 c:\A、c:\A\B,最后是 c:\A \B\C。

当 NuGet 在这些文件中找到设置时,将按如下方式应用设置:

对于单项元素,NuGet 会将之前找到的值替换为相同的键。也就是说,与当前文件夹或项目“最接近”的设置将覆盖之前找到的任何其他设置。例如mac命令行怎么找的软件位置,如果 . 存在于任何其他配置文件中,此设置将被覆盖。对于集合元素(例如

)夕风OCR图文识别工具,NuGet 会将所有配置文件中的值组合成一个集合。当存在于给定节点中时云脉ocr护照识别,NuGet 将忽略先前为该节点定义的配置值。

暗示

在项目存储库的根目录中添加 nuget.file。这被认为是最佳实践,因为它提高了可重复性并确保不同用户具有相同的 NuGet 配置。

设置演练

假设在两个单独的驱动器上具有以下文件夹结构:

disk_drive_1
    User
disk_drive_2
    Project1
        Source
    Project2
        Source
    tmp

然后将有 4 个 NuGet。在以下位置具有给定内容的文件。(此示例不包括计算机级文件mac命令行怎么找的软件位置,其行为类似于用户级文件。)

文件 A. 用户级文件(%%\NuGet\NuGet. on mac/Linux, ~/./NuGet/NuGet. on Linux):

<?xml version="1.0" encoding="utf-8"?>

    
        
    

文件 B./NuGet.:

<?xml version="1.0" encoding="utf-8"?>

    
        
    
    
        
    

文件 C. //NuGet.:

<?xml version="1.0" encoding="utf-8"?>

    
        
        
    
    
         
        
    

档案D。//NuGet.:

<?xml version="1.0" encoding="utf-8"?>

    
        
        
    

接下来,NuGet 将根据调用设置的位置按如下方式加载和应用设置:

其他用户范围的配置

从版本 5.7 开始,NuGet 增加了对其他用户范围配置文件的支持。此更新允许第三方供应商在不升级的情况下添加其他用户配置文件。这些配置文件位于子文件夹内的标准用户范围配置文件夹中。所有以 . 结尾的文件。要么 。会被考虑。标准工具无法编辑这些文件。

OS平台的其他配置

%%\NuGet\\*.

mac/Linux

~/./NuGet//*. 或 ~/.nuget//*。

NuGet 默认文件

这 。文件用于指定安装和更新包的包源,以及控制使用 nuget push 发布包的默认目标。因为管理员可以轻松地将一致的 .files 部署到开发人员和构建机器(例如,使用组策略),他们可以确保组织中的每个人都使用正确的包源,而不是 .

重要的

.files 永远不会导致开发人员的 NuGet 配置中的包源被删除。即如果开发者使用过NuGet,也就是注册了包源,这个包源在. 文件被创建。

还, 。或 NuGet 中的任何其他机制都不会阻止对包源的访问,例如 . 如果组织希望阻止此类访问,则必须通过防火墙等其他方式进行。

. 地点

下表根据目标操作系统进行描述。文件应该存储在哪里:

操作系统平台。位置

2017 或 NuGet 4.x+:

2015 及更早版本或 NuGet 3.x 及更早版本:

mac/Linux

$(通常为 ~/.local/share 或 /usr/local/share,取决于操作系统版本)

的设置示例。和应用

<?xml version="1.0" encoding="UTF-8"?>

    
    
    
        
    
    
    
    
        
        
    
    
    
    
    
        
    

相关文章

发表评论