Öğretici: Git kullanarak paketleri özel bir vcpkg kayıt defterinde yayımlama
Git kullanarak vcpkg aracılığıyla kullanmak üzere kendi özel paket kayıt defterinizi oluşturabilirsiniz. Özel kitaplıkları kullanmak veya mevcut paketlerde genel olmayan değişiklikler yapmak istiyorsanız özel kayıt defterleri idealdir. Paketlerinizin sürümleri ve içeriği üzerinde tam denetime sahip olduğunuzdan, özel kayıt defterine koyabileceğiniz öğelerle ilgili bir sınır yoktur.
Bu öğreticide şunların nasıl yapılacağını göstereceğiz:
Ön koşullar:
- vcpkg
- Git
- Terminal
1 - Git kullanarak vcpkg kayıt defteri oluşturma
vcpkg'nin Git tabanlı kayıt defterleri, vcpkg'nin anladığı belirli bir düzene sahip Git depolarıdır.
Git kayıt defterini başlatma:
mkdir vcpkg-registry
cd vcpkg-registry
git init
2 - Kayıt defteri düzenini oluşturma
Vcpkg Git tabanlı bir kayıt defteri aşağıdakileri gerektirir:
- kayıt defterinin bağlantı noktalarını içeren adlı
ports
bir klasör, - sürüm veritabanını içeren adlı
versions
bir klasör, - klasöründe adlı
baseline.json
versions
bir dosya.
Deponuz istediğiniz diğer dosyaları içerebilir, örneğin: betikler, LİSANS dosyası, README.md
dosya, belge vb.
1 - ve versions
klasörlerini ports
oluşturun:
mkdir ports
mkdir versions
2 - klasöründe aşağıdaki içeriklere sahip adlı baseline.json
versions
bir dosya oluşturun:
{
"default": {}
}
En düşük geçerli baseline.json
dosya yukarıdaki içeriği içermelidir. Dosya ve sürümler veritabanı hakkında baseline.json
daha fazla bilgi edinmek için sürüm oluşturma belgelerini okuyun.
3 - Değişikliklerinizi depoya işleme
git add versions/baseline.json
git commit -m "Initial commit"
İsteğe bağlı olarak, ayarlanmış bir uzak Git deponuz varsa bu, değişikliklerinizi göndermek için iyi bir noktadır.
git remote add origin https://example.com/vcpkg-registry.git
git push --set-upstream origin HEAD
3 - Kayıt defterine bağlantı noktaları ekleme
Kayıt defterindeki klasördeki ports
tüm paket bağlantı noktalarınızı kopyalayın. Her bağlantı noktasının en az bir vcpkg.json
dosya ve portfile.cmake
dosya içeren kendi dizini olmalıdır. GitHub depolarını paketleme öğreticisinde bağlantı noktası oluşturma hakkında daha fazla bilgi edinin.
git add ports/.
git commit -m "Add registry ports"
4 - Sürüm veritabanını güncelleştirme
Kayıt defterindeki her bağlantı noktasının karşılık gelen bir sürüm dosyası olmalıdır. Sürüm dosyaları komutu tarafından vcpkg x-add-version
oluşturulur. Bu komut, içindeki version/baseline.json
her bağlantı noktası için temel girdiyi de güncelleştirir.
Tüm bağlantı noktalarınızın sürüm veritabanını aynı anda güncelleştirmek için şunu çalıştırın:
vcpkg --x-builtin-ports-root=./ports --x-builtin-registry-versions-dir=./versions x-add-version --all --verbose
--x-builtin-ports-root
ve --x-builtin-registry-versions-dir
yeniden yönlendirme seçenekleridir.
Normalde x-add-version
, komut vcpkg'nin yerleşik kayıt defterinde çalışır; ancak yeniden yönlendirme seçeneklerini kullanarak komutunu yerel Git kayıt defterlerinde kullanmak mümkündür.
seçeneği --all
, vcpkg'nin kullanılabilir tüm bağlantı noktaları için dizini taramasını ports
ve tümünü aynı anda güncelleştirmesini sağlar. Son olarak, --verbose
seçeneği komutun yürüttüğü her işlemi standart çıktıya yazdırır, bu seçeneği kaldırarak çıkışı gizleyebilirsiniz.
, x-add-version
tüm bağlantı noktası değişikliklerinin kayıt defterinin Git deposuna kaydedilmiş olmasını gerektirir. Daha fazla bilgi edinmek için [x-add-version
command] belgelerini okuyun.
Tüm çıkış doğru göründüğünde şunu çalıştırın:
git add .
git commit -m "Update versions database"
Uzak git deponuz varsa, değişikliklerinizi göndermeyi unutmayın:
git push
Sonraki Adımlar
Hepsi bu! vcpkg ile kullanmak için kendi özel Git tabanlı kayıt defterinizi ayarladınız.
Şimdi deneyebileceğiniz bazı ek görevler şunlardır: