vcpkg new
摘要
vcpkg new --application
vcpkg new --name hello --version 1.0 [--version-relaxed | --version-date | --version-string]
创建准备用于当前工作目录中项目的清单文件 (vcpkg.json
) 和默认配置文件 (vcpkg-configuration.json
)。
如果项目是最终用户应用程序,请使用 --application
标志。
如果不使用 --application
,则需要 --name
和 --version
。 --version-date
、--version-relaxed
或 --version-string
可以强制选择特定版本格式。
有关版本控制格式的详细信息,请参阅版本控制参考。
选项
所有 vcpkg 命令都支持一组通用选项。
--application
创建适合在应用程序中使用的清单,无需提供名称和版本。
--name
要写入清单的名称。
--version
指示要写入清单的版本。 如果未传递其他版本格式开关,则根据输入的形式推断要使用的适当形式。
--version-relaxed
指示要写入清单的版本是“宽松”版本。 宽松版本遵循语义版本控制的格式,但允许任意数量的数值。 有关详细信息,请参阅版本控制参考。
--version-date
指示要写入清单的版本是“日期”版本。 日期版本为 ISO 8601 日期(例如 "YYYY-MM-DD")。 有关详细信息,请参阅版本控制参考。
--version-string
指示要写入清单的版本是没有排序语义的“字符串”
版本。 有关详细信息,请参阅版本控制参考。
示例
注意
vcpkg new
在 vcpkg.json
和 vcpkg-configuration.json
文件中生成元数据。 此项包括与试验性项目体验的集成。 具体而言,含有 "kind": "artifact"
的注册表适用于试验性 vcpkg-artifacts 功能。
With --application
$ vcpkg new --application
$ type vcpkg.json
{}
$ type .\vcpkg-configuration.json
{
"default-registry": {
"kind": "git",
"baseline": "64adda19c86e89526b5e27703a193c14477cce07",
"repository": "https://github.com/microsoft/vcpkg"
},
"registries": [
{
"kind": "artifact",
"location": "https://github.com/microsoft/vcpkg-ce-catalog/archive/refs/heads/main.zip",
"name": "microsoft"
}
]
}
使用 --name
和 --version
$ vcpkg new --name hello --version 2023-07-05
$ type vcpkg.json
{
"name": "hello",
"version-date": "2023-07-05"
}
$ type .\vcpkg-configuration.json
{
"default-registry": {
"kind": "git",
"baseline": "64adda19c86e89526b5e27703a193c14477cce07",
"repository": "https://github.com/microsoft/vcpkg"
},
"registries": [
{
"kind": "artifact",
"location": "https://github.com/microsoft/vcpkg-ce-catalog/archive/refs/heads/main.zip",
"name": "microsoft"
}
]
}
选择显式版本格式
$ vcpkg new --name hello --version 1.0 --version-date
error: `1.0` is not a valid date version. Dates must follow the format YYYY-MM-DD and disambiguators must be dot-separated positive integer values without leading zeroes.
$ vcpkg new --name hello --version 1.0 --version-string
$ type vcpkg.json
{
"name": "hello",
"version-string": "1.0"
}
$ type .\vcpkg-configuration.json
{
"default-registry": {
"kind": "git",
"baseline": "64adda19c86e89526b5e27703a193c14477cce07",
"repository": "https://github.com/microsoft/vcpkg"
},
"registries": [
{
"kind": "artifact",
"location": "https://github.com/microsoft/vcpkg-ce-catalog/archive/refs/heads/main.zip",
"name": "microsoft"
}
]
}