Udostępnij za pośrednictwem


vcpkg nowy

Streszczenie

vcpkg new --application
vcpkg new --name hello --version 1.0 [--version-relaxed | --version-date | --version-string]

Tworzy plik manifestu () i domyślny plik konfiguracji (vcpkg.jsonvcpkg-configuration.json) gotowy do użycia w projekcie w bieżącym katalogu roboczym.

Użyj flagi --application , jeśli projekt jest aplikacją użytkownika końcowego.

Jeśli nie używasz elementu --application, --name i --version są wymagane. --version-date, --version-relaxedlub --version-string może wymusić wybranie określonego formatu wersji. Aby uzyskać więcej informacji na temat formatów przechowywania wersji, zobacz Informacje o wersji.

Opcje

Wszystkie polecenia vcpkg obsługują zestaw typowych opcji.

--application

Tworzy manifest odpowiedni do użycia w aplikacjach, usuwając wymaganie podania nazwy i wersji.

--name

Nazwa do zapisania w manifeście.

--version

Wskazuje wersję do zapisania w manifeście. Jeśli żaden z innych przełączników formatu wersji nie zostanie przekazany, wywnioskuje odpowiedni formularz do użycia na podstawie formularza danych wejściowych.

--version-relaxed

Wskazuje, że wersja do zapisu w manifeście jest wersją "zrelaksowaną". Złagodzone wersje przestrzegają formatu semantycznego przechowywania wersji, ale zezwalają na dowolną liczbę wartości liczbowych. Aby uzyskać więcej informacji, zobacz dokumentację dotyczącą przechowywania wersji.

--version-date

Wskazuje, że wersja do zapisu w manifeście jest wersją "date". Wersje dat to data ISO 8601 (np. "RRRR-MM-DD"). Aby uzyskać więcej informacji, zobacz dokumentację dotyczącą przechowywania wersji.

--version-string

Wskazuje, że wersja do zapisu w manifeście jest wersją "string" bez zamawiania

Semantyka. Aby uzyskać więcej informacji, zobacz dokumentację dotyczącą przechowywania wersji.

Przykłady

Uwaga

vcpkg newgeneruje metadane w plikach vcpkg.json i .vcpkg-configuration.json Obejmuje to integrację z eksperymentalnym środowiskiem artefaktów. W szczególności rejestry z "kind": "artifact" programem są przeznaczone dla eksperymentalnej funkcji vcpkg-artifacts.

Z --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"
    }
  ]
}

Z i --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"
    }
  ]
}

Z jawnym wyborem formatu wersji

$ 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"
    }
  ]
}