Kurz: Publikování balíčků do privátního registru vcpkg pomocí Gitu
Můžete vytvořit vlastní privátní registr balíčků, který bude využívat přes vcpkg pomocí Gitu. Soukromé registry jsou ideální, pokud chcete používat soukromé knihovny nebo chcete provádět neveřejné úpravy stávajících balíčků. Máte plnou kontrolu nad verzemi a obsahem balíčků, takže ve skutečnosti neexistuje žádný limit toho, co můžete vložit do privátního registru.
V tomto kurzu si ukážeme, jak:
Požadavky:
- vcpkg
- Git
- Terminál
1. Vytvoření registru vcpkg pomocí Gitu
Registry založené na Gitu vcpkg jsou úložiště Git s konkrétním rozložením, kterému vcpkg rozumí.
Inicializace registru Git:
mkdir vcpkg-registry
cd vcpkg-registry
git init
2. Vytvoření rozložení registru
Registr založený na Gitu vcpkg vyžaduje následující:
- složku s názvem
ports
, která bude obsahovat porty registru, - složka s názvem
versions
, která bude obsahovat databázi verzí, - soubor s názvem
baseline.json
veversions
složce.
Vaše úložiště může obsahovat libovolné jiné soubory, například skripty, soubor LICENSE, README.md
soubor, dokumentaci atd.
1. Vytvořte složky ports
a versions
složky:
mkdir ports
mkdir versions
2 . Vytvořte soubor pojmenovaný baseline.json
ve versions
složce s následujícím obsahem:
{
"default": {}
}
Minimální platný baseline.json
soubor by měl obsahovat výše uvedený obsah. Další informace o baseline.json
souboru a databázi verzí najdete v dokumentaci k správě verzí.
3. Potvrzení změn do úložiště
git add versions/baseline.json
git commit -m "Initial commit"
Pokud máte nastavené vzdálené úložiště Git, je vhodné změny odeslat.
git remote add origin https://example.com/vcpkg-registry.git
git push --set-upstream origin HEAD
3. Přidání portů do registru
Zkopírujte všechny porty balíčku ve ports
složce v registru. Každý port musí mít svůj vlastní adresář obsahující alespoň vcpkg.json
soubor a portfile.cmake
soubor. Přečtěte si další informace o vytváření portů v kurzu o balení úložišť GitHub.
git add ports/.
git commit -m "Add registry ports"
4. Aktualizace databáze verzí
Každý port v registru musí mít odpovídající soubor verze. Soubory verzí jsou generovány příkazem vcpkg x-add-version
. Tento příkaz také aktualizuje položku směrného plánu pro každý port v version/baseline.json
.
Pokud chcete aktualizovat databázi verzí pro všechny porty najednou, spusťte:
vcpkg --x-builtin-ports-root=./ports --x-builtin-registry-versions-dir=./versions x-add-version --all --verbose
--x-builtin-registry-versions-dir
A jsou to --x-builtin-ports-root
možnosti přesměrování.
x-add-version
Příkaz obvykle pracuje s integrovaným registrem vcpkg, ale pomocí možností přesměrování je možné tento příkaz použít v místních registrech Gitu.
Tato --all
možnost zajistí, že vcpkg prohledá adresář ports
pro všechny dostupné porty a aktualizuje je všechny najednou. A konečně, --verbose
možnost vytvoří příkaz vytisknout každou operaci, která se spustí ve standardním výstupu, můžete výstup potlačit odebráním této možnosti.
Vyžaduje x-add-version
, aby všechny změny portů byly potvrzeny do úložiště Git registru. Další informace najdete v dokumentaci k [x-add-version
příkazu].
Jakmile bude výstup vypadat správně, spusťte:
git add .
git commit -m "Update versions database"
Pokud máte vzdálené úložiště Git, nezapomeňte změny odeslat:
git push
Další kroky
A to je vše! Nastavili jste vlastní privátní registr založený na Gitu pro použití s vcpkg.
Tady je několik dalších úkolů, které můžete vyzkoušet: