vcpkg new
Sinopsis
vcpkg new --application
vcpkg new --name hello --version 1.0 [--version-relaxed | --version-date | --version-string]
Crea un archivo de manifiesto () y un archivo de configuración predeterminado (vcpkg.json
vcpkg-configuration.json
) listo para usarse en el proyecto en el directorio de trabajo actual.
Use la marca si el --application
proyecto es una aplicación de usuario final.
Si no usa --application
, --name
y --version
son necesarios. --version-date
, --version-relaxed
o --version-string
puede forzar que se seleccione un formato de versión determinado.
Para obtener más información sobre los formatos de control de versiones, vea Referencia de control de versiones.
Opciones
Todos los comandos vcpkg admiten un conjunto de opciones comunes.
--application
Crea un manifiesto adecuado para su uso en aplicaciones, lo que elimina el requisito de proporcionar el nombre y la versión.
--name
Nombre que se va a escribir en el manifiesto.
--version
Indica la versión que se va a escribir en el manifiesto. Si no se pasa ninguno de los otros modificadores de formato de versión, deduce el formulario adecuado que se usará en función del formulario de la entrada.
--version-relaxed
Indica que la versión que se va a escribir en el manifiesto es una versión "relajada". Las versiones relajadas obedecen el formato del control de versiones semántico, pero permiten cualquier número de valores numéricos. Consulte referencia de control de versiones para obtener más información.
--version-date
Indica que la versión que se va a escribir en el manifiesto es una versión de "fecha". Las versiones de fecha son una fecha ISO 8601 (por ejemplo, "AAAA-MM-DD"). Consulte referencia de control de versiones para obtener más información.
--version-string
Indica que la versión que se va a escribir en el manifiesto es una versión de "cadena" sin ordenación.
Semántica. Consulte referencia de control de versiones para obtener más información.
Ejemplos
Nota:
vcpkg new
genera metadatos en vcpkg.json
y vcpkg-configuration.json
archivos. Esto incluye la integración con la experiencia de artefactos experimentales. En concreto, los registros con "kind": "artifact"
son para la característica experimental vcpkg-artifacts.
Con --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"
}
]
}
Con --name
y --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"
}
]
}
Con selección de formato de versión explícita
$ 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"
}
]
}