İngilizce dilinde oku

Aracılığıyla paylaş


Azure DevOps Server'ı GitHub'a bağlama (şirket içi)

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Azure DevOps Server projenizi GitHub depolarınıza bağladığınızda, GitHub işlemeleri ile iş öğelerine çekme istekleri arasında bağlantı kurmayı desteklersiniz. Çalışmanızı planlamak ve izlemek için Azure Boards'ı kullanırken yazılım geliştirme için GitHub'ı kullanabilirsiniz.

Not

Şirket içi Azure DevOps Server 2020, GitHub.com ve GitHub Enterprise Server depolarıyla tümleştirmeyi destekler. Azure DevOps Services'ten bağlanmak istiyorsanız bkz . Azure Boards'u GitHub'a bağlama.

Azure DevOps Server projenizi GitHub Enterprise Server depolarınıza bağladığınızda, GitHub işlemeleri ile çekme istekleri arasında iş öğelerine bağlanmayı desteklersiniz. Çalışmanızı planlamak ve izlemek için Azure Boards'ı kullanırken yazılım geliştirme için GitHub Enterprise'ı kullanabilirsiniz.

Not

Şirket içi Azure DevOps Server 2019, GitHub Enterprise Server depolarıyla tümleştirmeyi destekler. Azure DevOps Services'ten bağlanmak istiyorsanız bkz . Azure Boards'u GitHub'a bağlama.

Önkoşullar

Kategori Gereksinimler
İzinleri - Proje Koleksiyonu Yöneticileri grubu üyesi ve proje Katkıda Bulunanlar grubu. Projeyi oluşturduysanız izinleriniz vardır.
- Bağlandığınız GitHub Enterprise Server'ın Yönetici.
proje üyeliği Proje üyesi.
GitHub ile Tümleştirmesi - Azure DevOps Server 2020.1.1 Düzeltme Eki 2. Bu düzeltme eki olmadan yalnızca GitHub Enterprise Server depolarınıza bağlanabilirsiniz.
- GitHub için Azure Boards uygulaması GitHub kuruluşlarında veya hesabında yüklüdür.

Kimlik doğrulaması seçenekleri

Aşağıdaki kimlik doğrulama seçenekleri desteklenir.

Not

OAuth, Azure DevOps Server 2020 için desteklenmez.

GitHub'da Azure DevOps'u OAuth Uygulaması olarak kaydetme

Azure DevOps Server'ı GitHub Enterprise Server'ınıza bağlamak için OAuth kullanmayı planlıyorsanız, önce uygulamayı OAuth Uygulaması olarak kaydetmeniz gerekir. Daha fazla bilgi için bkz . OAuth Uygulaması oluşturma.

Azure DevOps Server'ı kaydetme

  1. GitHub Enterprise sunucunuz için web portalında oturum açın.

    GitHub Enterprise Server için oturum açma ekran görüntüsü.

  2. Ayarlar

    Yeni OAuth Uygulaması ekranına başlama sırasını gösteren ekran görüntüsü.

  3. Azure DevOps Server uygulamanızı kaydetmek için bilgilerinizi girin.

    Azure DevOps Server proje kaydının ekran görüntüsü.

    Giriş sayfası URL'si için proje koleksiyonunuzun Genel URL'sini belirtin. Azure DevOps Yönetim Konsolu'nu açıp Uygulama Katmanı düğümünü görüntülerken bu URL'yi bulabilirsiniz.

    Azure DevOps Server Yönetim Konsolu, Uygulama Katmanı'nın ekran görüntüsü.

    Yetkilendirme geri çağırma URL'si için, URL'yi oluşturmak için aşağıdaki deseni kullanın.

    {Azure DevOps Server Public Url}/{Collection Name}/_admin/oauth2/callback

    Örneğin:

    http://contoso/DefaultCollection/_admin/oauth2/callback

    https://tfs.contoso.com/MyCollection/_admin/oauth2/callback

  4. Uygulamayı kaydet'i seçin.

  5. Kayıtlı OAuth uygulamanız için İstemci Kimliği ve İstemci Gizli Anahtarı sağlayan bir sayfa görüntülenir.

    Kayıtlı OAuth uygulamanızın İstemci Kimliği ve gizli anahtarı ekran görüntüsü.

OAuth yapılandırmanızı Azure DevOps Server'a kaydetme

  1. Azure DevOps Server'ınızın web portalında oturum açın.

  2. GitHub Enterprise Oauth yapılandırmasını Azure DevOps Server koleksiyonunuza ekleyin.

  3. Yönetici ayarları

    OAuth yapılandırması ekleme adım sırasını gösteren ekran görüntüsü.

  4. Bilgilerinizi girin ve Oluştur'u seçin.

    OAuth yapılandırma iletişim kutusunun ekran görüntüsü.

Azure DevOps Server'ı GitHub Enterprise Server'a bağlama

Bir Azure Boards projesine en fazla 250 GitHub deposu bağlayabilirsiniz.

Not

100'den fazla GitHub deposuna bağlantı için Azure DevOps Server 2020.1 güncelleştirmesi veya sonraki bir sürümü gerekir.
GitHub.com depolarına bağlantı için Azure DevOps Server 2020.1.1 Düzeltme Eki 2 veya sonraki bir sürüm gerekir.

Bir Azure Boards projesine en fazla 100 GitHub deposu bağlayabilirsiniz. Bu sınır değiştirilemez.

  1. Azure DevOps Server'ınızın web portalını açın.

  2. Azure DevOps logosunu seçerek Projeler'i açın ve ardından GitHub Enterprise depolarınıza bağlanmak için yapılandırmak istediğiniz Azure Boards projesini seçin.

  1. Proje ayarları

    Açık Proje Ayarları>GitHub bağlantılarının ekran görüntüsü.

  2. Projeden ilk kez bağlantı oluşturuyorsanız, bağlantıyı yapmak için kullanmak istediğiniz kimlik doğrulama yöntemini seçin:

    • Kişisel Erişim Belirteci, ayrıntılar için bkz . Kişisel Erişim Belirteci kullanarak bağlanma.
    • GitHub kimlik bilgilerini bkz. GitHub kimlik bilgilerini kullanarak bağlanma.

    GitHub kimlik bilgileriyle ilk kez bağlanma işleminin ekran görüntüsü.

    Aksi takdirde Yeni bağlantı'yı seçin ve Yeni Bağlantı iletişim kutusundan kimlik doğrulama yönteminizi seçin.

  1. GitHub Enterprise hesabınızı bağlayınGitHub bağlantılarıProject ayarlarını seçin veya diğer kimlik doğrulama seçeneklerinden birini seçin; bu önerilmez.

    Proje ayarlarının, seçili Tümleştirmeler'in ekran görüntüsü.

OAuth ile bağlanma

OAuth yapılandırmanızı Azure DevOps Server'a kaydetme'nin 4. Adımında ayarladığınız yapılandırmayı seçin. Ardından Bağlan'ı seçin.

Yeni GitHub Enterprise bağlantısı, OAuth iletişim kutusunun ekran görüntüsü.

Kişisel Erişim Belirteci ile bağlanma

  1. PAT oluşturmak için bkz . Kişisel erişim belirteci oluşturma.

    İpucu

    GitHub PAT'nizi oluştururken şu kapsamları eklediğinizden emin olun: repo, admin:repo_hook, read:user, user:email.

  2. GitHub Enterprise sunucunuzun URL'sini ve bu sunucu tarafından tanınan Kişisel erişim belirteci kimlik bilgilerini girin. Ardından Bağlan'ı seçin.

PAT ile oturum açma ekran görüntüsü.

GitHub kimlik bilgileriyle bağlanma

  1. GitHub Enterprise sunucunuzun URL'sini ve bu sunucu tarafından tanınan yönetici hesabı kimlik bilgilerini girin. Ardından Bağlan'ı seçin.

GitHub kimlik bilgileriyle oturum açma ekran görüntüsü.

  1. İletişim kutusunda GitHub yönetim haklarına sahip olduğunuz tüm depolar listelenir. Başkalarının görünup görünmediğini belirlemek için Benimki ve Tümü arasında geçiş yapabilir ve ardından eklemek istediklerinizi de kontrol edebilirsiniz. İşiniz bittiğinde Kaydet'i seçin.

    Eklenecek depoların ekran görüntüsü.

  2. Azure Boards'tan bir GitHub hesabına veya kuruluşuna ilk kez bağlanmak için GitHub için Azure Boards uygulamasını da yüklersiniz. Bağlantıyı onaylama bölümünde açıklanan yordamları izleyerek tümleştirmeyi tamamlayın.

Bağlantı sorunlarını çözme

Azure Boards-GitHub tümleştirmesi, bağlantıyı desteklemek için çeşitli kimlik doğrulama protokollerine dayanır. Kullanıcının izin kapsamı veya kimlik doğrulaması kimlik bilgilerindeki değişiklikler, Azure Boards'a bağlı GitHub depolarının iptal edilmesine neden olabilir.

GitHub için Azure Boards uygulamasının desteklediği tümleştirmeye genel bakış için bkz . Azure Boards-GitHub tümleştirmesi.

Desteklenen kimlik doğrulama seçenekleri

Aşağıdaki kimlik doğrulama seçenekleri, bağlanmak istediğiniz GitHub platformuna göre desteklenir.

Platform

GitHub.com

GitHub Enterprise Server

Azure DevOps Services

  • kullanıcı hesabını GitHub.com
  • Kişisel erişim belirteci (PAT)
  • OAuth
  • PAT
  • GitHub kimlik bilgileri

Azure DevOps Server 2020

Uygulanamaz

  • PAT
  • GitHub kimlik bilgileri

Azure DevOps Server 2019

Uygulanamaz

  • OAuth
  • PAT
  • GitHub kimlik bilgileri

Not

GitHub için Azure Boards uygulamasıyla Azure Boards ve Azure DevOps Services, GitHub.com ve GitHub Enterprise Server depolarıyla tümleştirilir. Azure DevOps Server 2019 ve sonraki sürümleri yalnızca GitHub Enterprise Server depolarıyla tümleştirmeyi destekler. Diğer Git depolarıyla tümleştirme desteklenmez.

Erişim sorunlarını çözme

GitHub'a Azure Boards bağlantısının artık erişimi olmadığında, kullanıcı arabiriminde red-X ile bir uyarı durumu gösterir. Uyarının üzerine geldiğinizde kimlik bilgilerinin artık geçerli olmadığını gösterir. Sorunu düzeltmek için bağlantıyı kaldırın ve yeni bir bağlantı oluşturun.

Başarısız bağlantının ekran görüntüsü.

GitHub'a Azure Boards bağlantısının artık erişimi olmadığında, kullanıcı arabiriminde red-X içeren ve GitHub'a bağlanılamıyor gibi bir araç ipucuna sahip bir uyarı durumu gösterir.

Aşağıdaki çözümleri göz önünde bulundurun:

  • Bağlantı OAuth kullanıyorsa:

    • Azure Boards uygulamasının depolardan biri için erişimi reddedildi.

    • GitHub kullanılamıyor/ulaşılamıyor olabilir. Bu kullanılamazlık, hizmette veya şirket içinde bir altyapı/ağ sorunu nedeniyle olabilir. Hizmet durumunu aşağıdaki bağlantılardan de kontrol edebilirsiniz:

      GitHub deposu bağlantısını silin ve yeniden oluşturun. Bu yeniden oluşturulmuş bağlantı GitHub'ın Azure Boards'u yeniden yetkilendirmesini istemesine neden olur.

  • Bağlantı pat kullanıyorsa:

    • PAT iptal edildi veya gerekli izin kapsamları ya değişti ya da yetersiz kaldı.

    • Kullanıcı, GitHub deposundaki yönetici izinlerini kaybetmiş olabilir.

      PAT'yi yeniden oluşturun ve belirtecin kapsamının gerekli izinleri içerdiğinden emin olun: repo, read:user, user:email, admin:repo_hook. Daha fazla bilgi için bkz. PAT'leri kullanmaya yönelik en iyi yöntemler.

Belirli iş öğesi türleri için XML tanımlarını güncelleştirme

Kuruluşunuz, Barındırılan XML veya şirket içi XML işlem modelini kullanarak iş izlemeyi özelleştirirse ve GitHub bağlantı türlerini iş öğesi formlarının Geliştirme bölümüyle tümleştirmek istiyorsa, ilgili iş öğesi türleri için XML tanımlarını güncelleştirmeniz gerekir.

Örneğin, iş öğesi formlarının Geliştirme bölümünde kullanıcı hikayelerini ve hatalarını GitHub işlemelerine ve çekme isteklerine bağlamak için, bu iş öğesi türleri için XML tanımlarını güncelleştirmeniz gerekir.

XML tanımlarını değiştirmek için Barındırılan XML işlem modeli bölümünde açıklanan adımları uygulayın. Her iş öğesi türü için:

  1. Group Label="Development" Bölümünü bulun.
  2. Dış bağlantı türlerini, GitHub Commit'i ve GitHub Çekme İsteği'ni desteklemek için aşağıdaki kod satırlarını ekleyin:

Bu tümleştirme, GitHub etkinliklerinin doğrudan Azure Boards'taki iş öğelerinizden sorunsuz bir şekilde izlenmesini sağlar.

XML
             <ExternalLinkFilter Type="GitHub Pull Request" />  
             <ExternalLinkFilter Type="GitHub Commit" />  

Güncelleştirildiğinde, bölüm aşağıdaki gibi görünmelidir.

XML
<Group Label="Development">  
   <Control Type="LinksControl" Name="Development">  
      <LinksControlOptions ViewMode="Dynamic" ZeroDataExperience="Development" ShowCallToAction="true">  
         <ListViewOptions GroupLinks="false">   
         </ListViewOptions>  
         <LinkFilters>  
             <ExternalLinkFilter Type="Build" />  
             <ExternalLinkFilter Type="Integrated in build" />  
             <ExternalLinkFilter Type="Pull Request" />  
             <ExternalLinkFilter Type="Branch" />  
             <ExternalLinkFilter Type="Fixed in Commit" />  
             <ExternalLinkFilter Type="Fixed in Changeset" />  
             <ExternalLinkFilter Type="Source Code File" />  
             <ExternalLinkFilter Type="Found in build" />  
             <ExternalLinkFilter Type="GitHub Pull Request" />  
             <ExternalLinkFilter Type="GitHub Commit" />  
         </LinkFilters>  
      </LinksControlOptions>  
   </Control>  
</Group>  

Sonraki adımlar