Azure Boards'ı GitHub'a (bulut) Bağlan

Azure DevOps Services

Çalışmanızı planlamak ve izlemek için yazılım geliştirme ve Azure Boards projeniz için GitHub.com depoları kullanın. GitHub işleme ve çekme isteklerinizin Azure Boards'taki iş öğelerinize bağlanması için projenizi ve deponuzu Bağlan.

Not

Azure Boards ve Azure DevOps Services, GitHub.com ve GitHub Enterprise Server depolarıyla tümleştirmeyi destekler. Şirket içi Azure DevOps Sunucusu'ndan bağlanmak istiyorsanız bkz. Azure DevOps Server'dan GitHub Enterprise Server'a Bağlan.

Önkoşullar

  • Azure Boards veya Azure DevOps projeniz olmalıdır. Henüz bir projeniz yoksa bir proje oluşturun.
  • Project Yönetici istrators grubunun üyesi olmanız gerekir. Projeyi oluşturduysanız, izinleriniz vardır.
  • Bağlanmak için GitHub deposunun yöneticisi veya sahibi olmanız gerekir. Bu depoların yöneticisi olduğunuz sürece birden çok GitHub deposuna bağlanabilirsiniz.

Kimlik doğrulaması seçenekleri

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

GitHub.com

GitHub Enterprise Server

Not

Github'ı PAT ile bağlamayı seçerseniz GitHub hesabınızda PAT için çoklu oturum açmayı (SSO) yapılandırdığınızdan emin olun. Güvenlik Onay İşaretleme Dili (SAML) SSO kimlik doğrulaması yapılandırılmış bir kuruluşun depolarının listesini alabilmek için bu gereklidir.

Azure Boards'ı bir GitHub deposuna Bağlan.

  1. Azure DevOps projenizde oturum açın.

  2. Proje ayarları>GitHub bağlantıları'nı seçin.

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

  3. Projeden ilk kez bağlantı yapıyorsanız GitHub hesabınızın kimlik bilgilerini kullanmak için GitHub hesabınızı Bağlan seçin.

    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ğlan ion iletişim kutusundan kimlik doğrulama yönteminizi seçin.

    GitHub hesabınızı kullanarak bağlandığınızda, kimlik doğrulaması için GitHub hesabı kimlik bilgilerinizi kullanın. PAT kullanmak için bkz . PAT kullanarak GitHub bağlantısı ekleme. GitHub Enterprise Server'a bağlanmak için bkz . Azure DevOps'u GitHub'a OAuth Uygulaması olarak kaydetme.

GitHub kimlik bilgileriyle GitHub bağlantısı ekleme

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

  1. Azure Boards'tan GitHub'a ilk kez bağlanıyorsanız GitHub kimlik bilgilerinizi kullanarak oturum açmanız istenir. Depo yöneticisi olduğunuz bir hesap seçin.

  2. Bağlanmak istediğiniz GitHub hesabını veya kuruluşunu seçin. Yalnızca sahibi olduğunuz veya yöneticisi olduğunuz kuruluşlar listelenir.

    Bir kuruluşun tüm depoları Zaten Azure Boards'a bağlıysa aşağıdaki iletiyi görürsünüz.

    Bağlanacak başka deponun olmadığı iletinin ekran görüntüsü.

  3. GitHub kimlik bilgilerinizi girin. İki öğeli kimlik doğrulamasını etkinleştirdiyseniz GitHub'ın size gönderdiği kimlik doğrulama kodunu girin ve Doğrula'yı seçin. Aksi takdirde, GitHub hesabınız Azure DevOps Services hesabınızla ilişkilendirildiğinden sistem GitHub kuruluşunuzu otomatik olarak tanır.

Depoları seçin

Kimliğiniz doğrulandıktan sonra, bağlanmak istediğiniz depoları seçebilirsiniz.

  1. GitHub Depoları Ekle iletişim kutusu, seçtiğiniz kuruluşun yöneticisi olduğunuz tüm GitHub.com depoları otomatik olarak görüntüler ve seçer. Tümleştirmeye katılmak istemediğiniz depoların seçimini kaldırın.

    GitHub depolarını gösteren ekran görüntüsü.

    İpucu

    GitHub deposunu yalnızca tek bir Azure DevOps kuruluşunda tanımlanan projelere bağlamanızı öneririz. aynı GitHub deposunu iki veya daha fazla Azure DevOps kuruluşunda tanımlanan projelere Bağlan beklenmeyen durumlara yol açabilirAB# bahsetme bağlama. Daha fazla bilgi için bkz . GitHub ve Azure Boards tümleştirme sorunlarını giderme.

    Tüm depolar zaten geçerli veya başka bir kuruluşa bağlıysa aşağıdaki ileti görüntülenir.

    Bağlanacak başka deponun olmadığı iletinin ekran görüntüsü.

  2. Bitirdiğinizde, Kaydet'i seçin.

Bağlantıyı onaylayın

  1. Görüntülenen GitHub sayfasını gözden geçirin ve onayla, Yükle ve Yetkilendir'i seçin.

    GitHub depolarını onaylamayı gösteren ekran görüntüsü.

  2. Onaylamak için GitHub parolanızı girin.

  3. İşiniz bittiğinde, seçilen depolarla yeni bağlantının listelendiğini görmeniz gerekir.

Bağlı depoların listesinin ekran görüntüsü.

GitHub için Azure Boards uygulamasının yapılandırmasını değiştirmek veya yönetmek için bkz . Azure Boards'a depo erişimini değiştirme.

PAT kullanarak GitHub bağlantısı ekleme

GitHub deponuza bağlanmak için GitHub hesabı kimlik bilgilerinizi kullanmanızı öneririz. Ancak, PAT kullanmanız gerekiyorsa, bu yordamları izleyerek bunu yapın.

İpucu

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

  1. Kişisel Erişim Belirteci'ni seçin.

    Kişisel Erişim Belirteci'ni seçerek Yeni GitHub bağlantısı iletişim kutusunun ekran görüntüsü.

    GitHub PAT oluşturmak için GitHub Developer Ayarlar > Personal erişim belirteçleri'ne gidin.

  2. PAT girin ve Bağlan'yi seçin.

    Girilen PAT'i gösteren ekran görüntüsü.

  3. Bu makalenin önceki bölümlerinde yer alan Depoları seçme başlığı altında açıklanan yordamları izleyerek projeye bağlanmak istediğiniz depoları seçin.

  4. Azure Boards'tan bir GitHub hesabına veya kuruluşuna ilk kez bağlanıyorsanız GitHub için Azure Boards uygulamasını da yüklemeniz gerekir. Bu makalenin önceki bölümlerinde bağlantıyı onaylayın.

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

Azure DevOps'u 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 Services'ı kaydetme

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

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

  2. Ayarlar> Geliştirici ayarları>Oauth Uygulamaları>Yeni OAuth Uygulaması'nı açın.

    Yeni OAuth Uygulamasının sırasını gösteren ekran görüntüsü.

  3. Kayıt bilgilerini girin.

    Giriş sayfası URL'si için kuruluşunuzun Kuruluş URL'sini belirtin.
    Yetkilendirme geri çağırma URL'si için, URL'yi oluşturmak için aşağıdaki deseni kullanın.

    {Azure DevOps Services Organization URL}/_admin/oauth2/callback

    Örneğin:

    https://dev.azure.com/fabrikam/_admin/oauth2/callback

    Kaydedilecek uygulamayı gösteren ekran görüntüsü.

  4. Uygulamayı kaydet'i seçin.

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

    Kayıtlı OAuth uygulaması için İstemci Kimliği ve İstemci Gizli Anahtarı'nın ekran görüntüsü.

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

  1. Azure DevOps Services için web portalında oturum açın.

  2. GitHub Enterprise Oauth yapılandırmasını kuruluşunuza ekleyin.

  3. Kuruluş ayarları'nda Oauth yapılandırmaları>Oauth yapılandırması ekle'yi seçin.

    Açık Kuruluş Ayarlar, OAuth yapılandırmalarının ekran görüntüsü.

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

    OAuth yapılandırmaları iletişim kutusu.

Azure DevOps Services'i GitHub Enterprise Server'a Bağlan

Önemli

Azure DevOps Services'ı GitHub Enterprise Server'ınıza bağlamak için GitHub Enterprise Server'ınıza İnternet'ten yeterince erişilebilir olması gerekir. Azure DNS'nin GitHub Enterprise Server adınızı çözümleyebildiğinden ve güvenlik duvarınızın Azure Veri Merkezi IP adreslerinden erişime izin verdiğinden emin olun. IP adresi aralığını belirlemek için bkz . Microsoft Azure Veri Merkezi IP Aralıkları. Bağlantı sorunları olduğunda karşılaşılan yaygın bir hata iletisi:

Uzak ad çözümlenemedi: 'github-enterprise-server.contoso.com'

Bu hatayla karşılaşırsanız sunucunuzun erişilebilir olup olmadığını denetleyin. Daha fazla bilgi için bkz . Azure DNS SSS.

  1. İlk kez bağlantı için Proje ayarları>GitHub bağlantıları>GitHub Enterprise Server'ı seçin.

    İlk bağlantı olarak GitHub Enterprise Server'ı seçin.

    Alternatif olarak, Yeni GitHub bağlantısı iletişim kutusunda GitHub Enterprise Server'ı seçin.

    Yeni GitHub bağlantısı iletişim kutusunun ekran görüntüsü, GitHub Enterprise Server'ı seçin.

  2. Kimlik doğrulama yöntemini seçin.

    Kimlik doğrulama yöntemi iletişim kutusunu gösteren ekran görüntüsü.

    OAuth ile Bağlan

    OAuth yapılandırmanızı Azure DevOps Services'e kaydetmenin 4. Adımında ayarladığınız yapılandırmayı seçin ve ardından Bağlan'ı seçin.

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

    Kişisel Erişim Belirteci ile Bağlan

    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.

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

    Kullanıcı Adı ve Parola ile Bağlan

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

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

  3. İ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. Bitirdiğinizde Kaydet'i seçin.

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

    İpucu

    Yalnızca bir GitHub kuruluşu altında tanımlanan depolara bağlantı oluşturabilirsiniz. Bir projeyi başka bir GitHub kuruluşunda tanımlanan diğer depolara bağlamak için başka bir bağlantı eklemeniz gerekir.

  4. Azure Boards'tan bir GitHub hesabına veya kuruluşuna ilk kez bağlanıyorsanız GitHub için Azure Boards uygulamasını da yüklersiniz. Bu makalenin önceki bölümlerinde bağlantıyı onaylayı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
  • Kullanıcı adı ve parola

Azure DevOps Server 2020

Uygulanamaz

  • PAT
  • Kullanıcı adı ve parola

Azure DevOps Server 2019

Uygulanamaz

  • OAuth
  • PAT
  • Kullanıcı adı ve parola

Not

GitHub için Azure Boards uygulamasıyla Azure Boards ve Azure DevOps Services, GitHub.com ve GitHub Enterprise Server depolarıyla tümleştirmeyi destekler. 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.

Azure Boards kuruluşuna erişim izni verme

Azure Boards ile GitHub arasındaki tümleştirme beklendiği gibi çalışmıyorsa kuruluşa erişim izni verdiğini doğrulayın.

  1. GitHub web portalından profil menünüzü Ayarlar açın.
    Açık profilin ekran görüntüsü, Ayarlar seçin.

  2. Tümleştirmeler>Yetkili OAuth Uygulamaları Azure Boards altında Uygulamalar'ı >seçin.

  3. Kuruluş erişimi'nin altında, görünebilecek sorunları çözün. Erişim isteği beklemede olarak gösterilen tüm kuruluşlara erişim izni vermek için Ver'i seçin.

    Erişimi olmayan kuruluşlarla Kuruluş erişiminin ekran görüntüsü.

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ü.

Bu sorunu çözmek için aşağıdaki öğeleri 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 edilmiş veya gerekli izin kapsamları değiştirilmiş ve yetersiz olabilir.

    • Kullanıcının GitHub deposunda yönetici izinleri olmayabilir.

      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.

Bozuk GitHub Enterprise Server bağlantısını çözme

Mevcut GitHub Enterprise Server bağlantısıyla Azure DevOps Server'dan Azure DevOps Services'e geçiş yaparsanız, mevcut bağlantınız beklendiği gibi çalışmaz. GitHub'daki iş öğesi bahsetmeleri gecikebilir veya Azure DevOps Services'da hiç gösterilmeyebilir. GitHub ile ilişkili geri çağırma URL'si artık geçerli olmadığından bu sorun oluşur.

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

  • Bağlantıyı kaldırın ve yeniden oluşturun: GitHub Enterprise Server deposu bağlantısını kaldırın ve yeniden oluşturun. Azure Boards belgelerindeki Bağlan verilen adımların sırasını izleyin.

  • Web kancası URL'sini düzeltme: GitHub'ın depo ayarları sayfasına gidin ve geçirilen Azure DevOps kuruluş URL'sine işaret ederek web kancası URL'sini düzenleyin: https://dev.azure.com/{OrganizationName}/_apis/work/events?api-version=5.2-preview

Birden çok Azure DevOps kuruluşuna Bağlan

GitHub deponuzu dev.azure.com/Contoso ve dev.azure.com/Fabrikam gibi birden fazla Azure DevOps kuruluşunda tanımlanan iki veya daha fazla projeyle bağlarsanız, iş öğelerine bağlanan AB# bahsetmelerini kullanırken beklenmeyen sonuçlar alabilirsiniz. Bu sorun, iş öğesi kimliklerinin Azure DevOps kuruluşlarında benzersiz olmadığından oluşur, bu nedenle AB#12 Contoso veya Fabrikam kuruluşundaki bir iş öğesine başvurabilir. bir işleme iletisinde veya çekme isteğinde bir iş öğesinden bahsedildiğinde, her iki kuruluş da varsa eşleşen bir kimlikle iş öğesine bağlantı oluşturmaya çalışabilir.

Genel olarak, bir kullanıcı projelerden birindeki tek bir iş öğesine bağlanmak için AB# bahsetmesi yapmayı amaçlıyor. Ancak, her iki hesapta da aynı kimlikte bir iş öğesi varsa, her iki iş öğesi için de bağlantılar oluşturulur ve bu da karışıklığa neden olur.

Şu anda bu sorunu geçici olarak çözmenin bir yolu olmadığından, tek bir GitHub deposunu yalnızca tek bir Azure DevOps kuruluşuna bağlamanızı öneririz.

Not

GitHub için Azure Boards uygulamasını kullanarak bağlantı kurduğunuzda, uygulama iki farklı kuruluşa bağlanmanızı engeller. GitHub deposu yanlış Azure DevOps kuruluşuna yanlış bağlıysa, depoyu doğru Azure DevOps kuruluşuna ekleyebilmeniz için önce bağlantıyı kaldırmak için söz konusu kuruluşun sahibine başvurmanız gerekir.

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

Kuruluşunuz iş izleme deneyimini özelleştirmek için Barındırılan XML veya şirket içi XML işlem modelini kullanıyorsa ve iş öğesi formlarındaki Geliştirme bölümünden GitHub bağlantı türlerine bağlanmak ve görüntülemek istiyorsanız, iş öğesi türleri için XML tanımlarını güncelleştirin.

Örneğin, Kullanıcı hikayelerini ve hatalarını Geliştirme bölümünden GitHub işlemelerine ve çekme isteklerine bağlamak istiyorsanız, kullanıcı hikayeleri ve hataları için XML tanımlarını güncelleştirmeniz gerekir.

XML tanımlarını güncelleştirmek için Barındırılan XML işlem modelinde sağlanan görev dizisini izleyin. Her iş öğesi türü için bölümünü bulun Group Label="Development" ve dış bağlantı türlerini desteklemek için aşağıdaki kod söz dizimine şu iki satırı ekleyin: GitHub İşleme ve GitHub Çekme İsteği.

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

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

<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>  

SSS (Sık sorulan sorular)

S: Azure DevOps'taki kullanıcılarımdan bazılarının GitHub kimlikleri var. Bunları kuruluşuma yeni GitHub kullanıcıları olarak eklemem gerekiyor mu?

Y: Hayır. Kullanıcılarınızdan oturumu kapatmalarını isteyin ve ardından yeni bir tarayıcı oturumundan GitHub kimlik bilgileriyle kuruluşta yeniden oturum açın. Bu eylem, kullanıcıların geçerli GitHub kimliklerine sahip olduğunu belirlemeye yardımcı olur.

S: Yönetici bir kuruluşum ve GitHub kullanıcılarını davet etmeyi sağlayan ilkeyi açtım. Neden yeni GitHub kullanıcılarını davet edemiyoruz?

Y: Ayar değiştirildikten sonra Azure DevOps oturumunu kapatın ve ardından yeni bir tarayıcı oturumundan kuruluşta dev.azure.com/{organizationName} veya organizationName.visualstudio.com GitHub kimlik bilgilerinizle yeniden oturum açın.

S: GitHub kimlik bilgilerimle oturum açtım, ancak GitHub kullanıcılarını neden davet edemiyorum?

Y: Yalnızca kuruluş veya proje Yönetici istrator'lar yeni kullanıcıları kuruluşa katılmaya davet edebilir. Yeni kullanıcı eklemek için gereken izne sahip olmayabilirsiniz. Doğru izinleri almak için yöneticinizle birlikte çalışın veya kullanıcıyı sizin yerinize eklemesini isteyin.

Sonraki adımlar