Aracılığıyla paylaş


Azure Pipelines ile NuGet paketlerini geri yükleme

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

NuGet Paketi Geri Yükleme ile projenizin tüm bağımlılıklarını kaynak denetiminde depolamak zorunda kalmadan yükleyebilirsiniz. Bu, daha temiz bir geliştirme ortamı ve daha küçük bir depo boyutu sağlar. NuGet geri yükleme görevini, NuGet CLI'yı veya .NET Core CLI'yı kullanarak NuGet paketlerinizi geri yükleyebilirsiniz. Bu makalede, Hem Klasik hem de YAML İşlem Hatlarını kullanarak NuGet paketlerinizi nasıl geri yükleneceği gösterilmektedir.

Önkoşullar

Akıştan NuGet paketlerini geri yükleme

  1. Klasik işlem hattı tanımınıza gidin ve Düzenle'yi seçin.

  2. Yeni görev eklemek için seçin + . Görevi işlem hattınıza eklemek için NuGet'i arayın ve Ekle'yi seçin.

  3. Görevinizi adlandırın ve Komuttan Geri Yükle'yi seçin.

  4. Buradan seçtiğim Akışlar'ı seçin ve açılan menüden akışınızı seçin. Kendi yapılandırma dosyanızı kullanmak istiyorsanız, NuGet.config dosyamda Akışlar'ı seçin ve kuruluşunuzun dışındaki akışlarla kimlik doğrulaması yapmak istiyorsanız NuGet.config dosyanızın ve hizmet bağlantınızın yolunu girin.

  5. NuGet.org paketlerini dahil etmek istiyorsanız, NuGet.org paketlerini kullan onay kutusunu işaretleyin.

  6. İşiniz bittiğinde Kaydet ve kuyruk'a tıklayın.

    NuGet geri yükleme görevinin nasıl yapılandırıldığını gösteren ekran görüntüsü.

Not

Klasik NuGet geri yükleme NuGetCommand@2 görevini kullanır. Varsayılan olarak, bu sürüm NuGet 4.1.0 kullanır. Farklı bir NuGet sürümü kullanmak istiyorsanız NuGet Aracı Yükleyicisi görevini kullanın.

NuGet paketlerini yerel olarak geri yükleme

öğesini veya .slndosyanızla nuget.config .csproj aynı klasöre yerleştirin. Yapılandırma dosyanız aşağıdaki örneğe benzer görünmelidir:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!-- remove inherited connection strings -->
    <clear />
    <!-- add an Azure Artifacts feed -->
    <add key="FabrikamFiber" value="https://pkgs.dev.azure.com/microsoftLearnModule/_packaging/FabrikamFiber/nuget/v3/index.json" />
    <!-- Get packages from NuGet.org -->
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
</configuration>

NuGet paketlerinizi geri yüklemek için proje dizininizde aşağıdaki komutu çalıştırın:

nuget.exe restore

NuGet paketlerini farklı bir kuruluştaki bir akıştan geri yükleme

NuGet paketlerini farklı bir Azure DevOps kuruluşundaki bir akıştan geri yüklemek için kimlik doğrulaması için kişisel erişim belirteci kullanmanız gerekir.

Kişisel erişim belirteci oluşturma

  1. Azure DevOps kuruluşunuza gidin ve kullanıcı ayarları>Kişisel Erişim Belirteçleri'ni seçin.

    Kişisel erişim belirtecinin nasıl oluşturulacağını gösteren ekran görüntüsü.

  2. Paketleme (okuma) kapsamına sahip bir kişisel erişim belirteci oluşturun ve PAT'nizi panoya kopyalayın.

    Okuma izinlerini paketlemeyle kişisel erişim belirtecinin nasıl oluşturulacağını gösteren ekran görüntüsü.

NuGet paketlerini geri yükleme

  1. İşlem hattı tanımınıza gidin ve NuGet geri yükleme görevini seçin. Görevin 2. sürümünü kullandığınızdan emin olun.

    NuGet geri yükleme görev sürümünü gösteren ekran görüntüsü.

  2. Akışlar ve kimlik doğrulaması'nı ve ardından NuGet.config'imde Akışlar'ı seçin.

  3. NuGet.config dosyanızın yolunu seçin.

  4. Bu kuruluş/koleksiyon dışındaki akışlar için Kimlik Bilgileri eklemek için Yeni'yi seçin.

    NuGet geri yükleme görevini yapılandırmayı gösteren ekran görüntüsü.

  5. Dış Azure DevOps Sunucusu'nu seçin ve akış URL'nizi (NuGet.config dosyasındakiyle eşleştiğinden emin olun), hizmet bağlantı adınızı ve daha önce oluşturduğunuz kişisel erişim belirtecini girin. Bitirdiğinizde Kaydet'i seçin.

    Yeni hizmet bağlantısının nasıl ekleneceğini gösteren ekran görüntüsü.

  6. İşiniz bittiğinde Kaydet ve kuyruk'a tıklayın.

SSS

S: İşlem hattım NuGet paketlerimi geri yükleyemediği için mi?

Y: NuGet geri yükleme görevi çeşitli nedenlerle başarısız olabilir. En yaygın senaryo, işlem hattınızın kullandığı NuGet sürümü tarafından desteklenmeyen bir hedef çerçeve gerektiren yeni bir proje eklemenizdir. Visual Studio çözümünüzü uygun şekilde güncelleştirdiğinden bu hata genellikle yerel geliştirme ortamında gerçekleşmez. NuGet görevinizi en son sürüme yükselttiğinizden emin olun.