我使用chocolatey来安装带参数的git,并且在命令行中运行良好:
choco install git -params '"/GitOnlyOnPath /NoAutoCrlf"'
现在,我想把它放在我的.config
文件中,它似乎不起作用。以下是我希望如何配置它的示例:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="git" params="/GitOnlyOnPath /NoAutoCrlf"/>
</packages>
这会成功安装git,但忽略这些参数:autocrlf
之后仍然是true
。
文档和大多数来源仅涵盖包实体的version
和location
属性。那么,(怎么样)可以在.config
文件中配置自定义参数?
答案 0 :(得分:10)
我不太确定我同意你的论点,即文档没有涵盖这一点,但也许很难找到?我们在安装文章下有它,因为你可以调用packages.config。
https://github.com/chocolatey/choco/wiki/CommandsInstall#packagesconfig
包括在内:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="apackage" />
<package id="anotherPackage" version="1.1" />
<package id="chocolateytestpackage" version="0.1" source="somelocation" />
<package id="alloptions" version="0.1.1"
source="https://somewhere/api/v2/" installArguments=""
packageParameters="" forceX86="false" allowMultipleVersions="false"
ignoreDependencies="false"
/>
</packages>
始终尝试查看choco wiki中的文档 - 这是最新的。此外,Chocolatey packages.config
与NuGet packages.config
不同。
答案 1 :(得分:0)
我完全同意其他人的观点,即文档没有充分涵盖这一重要问题。没有--params
开关等效于packageParameters
属性的语法示例。
这里是如何在配置文件上存储参数的示例。
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="apache-httpd" packageParameters='/installLocation="D:\server\httpd"'/>
</packages>
注意属性名称及其格式。
其他类似的工具使用JSON格式存储软件包列表(PHP编写器,NPM和...),这种方式更加直观。