Delen via


Azure DevOps Server verbinden met GitHub (on-premises)

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

Wanneer u uw Azure DevOps Server-project verbindt met uw GitHub-opslagplaatsen, ondersteunt u het koppelen tussen GitHub-doorvoeringen en pull-aanvragen voor werkitems. U kunt GitHub gebruiken voor softwareontwikkeling terwijl u Azure Boards gebruikt om uw werk te plannen en bij te houden.

Notitie

On-premises Azure DevOps Server 2020 ondersteunt integratie met GitHub.com- en GitHub Enterprise Server-opslagplaatsen. Als u verbinding wilt maken vanuit Azure DevOps Services, raadpleegt u Azure Boards verbinden met GitHub.

Wanneer u uw Azure DevOps Server-project verbindt met uw GitHub Enterprise Server-opslagplaatsen, ondersteunt u het koppelen tussen GitHub-doorvoeringen en pull-aanvragen voor werkitems. U kunt GitHub Enterprise gebruiken voor softwareontwikkeling terwijl u Azure Boards gebruikt om uw werk te plannen en bij te houden.

Notitie

On-premises Azure DevOps Server 2019 ondersteunt integratie met GitHub Enterprise Server-opslagplaatsen. Als u verbinding wilt maken vanuit Azure DevOps Services, raadpleegt u Azure Boards verbinden met GitHub.

Vereisten

Categorie Eisen
machtigingen - Lid van de beheerders van projectverzamelingen groep en de groep Inzendersproject. Als u het project hebt gemaakt, hebt u machtigingen.
- Administrator- van de GitHub Enterprise Server waarmee u verbinding maakt.
projectlidmaatschap lid van het project.
integratie met GitHub - Azure DevOps Server 2020.1.1 Patch 2. Zonder deze patch kunt u alleen verbinding maken met uw GitHub Enterprise Server-opslagplaatsen.
- Azure Boards-app voor GitHub geïnstalleerd in de GitHub-organisaties of het account.

Verificatieopties

De volgende verificatieopties worden ondersteund.

Notitie

OAuth wordt niet ondersteund voor Azure DevOps Server 2020.

Azure DevOps registreren in GitHub als een OAuth-app

Als u van plan bent om OAuth te gebruiken om Azure DevOps Server te verbinden met uw GitHub Enterprise Server, moet u de toepassing eerst registreren als een OAuth-app. Zie Een OAuth-app maken voor meer informatie.

Azure DevOps Server registreren

  1. Meld u aan bij de webportal voor uw GitHub Enterprise-server.

    Schermopname van aanmelden voor GitHub Enterprise Server.

  2. Selecteer Instellingen >>

    Schermopname van de volgorde voor het openen van het scherm Nieuwe OAuth-app.

  3. Voer uw gegevens in om uw Azure DevOps Server-toepassing te registreren.

    Schermopname van azure DevOps Server-projectregistratie.

    Geef voor de startpagina-URL de openbare URL van uw projectverzameling op. U vindt deze URL wanneer u de Azure DevOps-beheerconsole opent en het knooppunt toepassingslaag bekijkt.

    Schermopname van de Beheerconsole van Azure DevOps Server, toepassingslaag.

    Gebruik voor de callback-URL voor autorisatie het volgende patroon om de URL samen te stellen.

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

    Voorbeeld:

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

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

  4. Selecteer Toepassing registreren.

  5. Er wordt een pagina weergegeven met de client-id en het clientgeheim voor uw geregistreerde OAuth-toepassing.

    Schermopname van client-id en clientgeheim voor uw geregistreerde OAuth-toepassing.

Uw OAuth-configuratie registreren in Azure DevOps Server

  1. Meld u aan bij de webportal voor uw Azure DevOps-server.

  2. Voeg de GitHub Enterprise Oauth-configuratie toe aan uw Azure DevOps Server-verzameling.

  3. Selecteer toevoegen.

    Schermopname van de stappenreeks voor het toevoegen van de OAuth-configuratie.

  4. Voer uw gegevens in en selecteer Vervolgens Maken.

    Schermopname van het dialoogvenster OAuth-configuratie.

Azure DevOps Server verbinden met GitHub Enterprise Server

U kunt maximaal 250 GitHub-opslagplaatsen verbinden met een Azure Boards-project.

Notitie

Voor verbinding met meer dan 100 GitHub-opslagplaatsen is azure DevOps Server 2020.1-update of nieuwere versie vereist.
Voor verbinding met GitHub.com opslagplaatsen is Azure DevOps Server 2020.1.1 Patch 2 of hoger vereist.

U kunt maximaal 100 GitHub-opslagplaatsen verbinden met een Azure Boards-project. Deze limiet kan niet worden gewijzigd.

  1. Open de webportal voor uw Azure DevOps-server.

  2. Selecteer het Azure DevOps-logo om Projecten te openen en kies vervolgens het Azure Boards-project dat u wilt configureren om verbinding te maken met uw GitHub Enterprise-opslagplaatsen.

  1. Selecteer Project-instellingen>GitHub-verbindingen.

    Schermopname van het openen van GitHub-verbindingen met Project-instellingen>.

  2. Als het de eerste keer is dat u verbinding maakt vanuit het project, kiest u de verificatiemethode die u wilt gebruiken om de verbinding te maken:

    Schermopname van de eerste keer dat u verbinding maakt met GitHub-referenties.

    Anders selecteert u Nieuwe verbinding en selecteert u de verificatiemethode in het dialoogvenster Nieuwe verbinding.

  1. Selecteer Project-instellingen>GitHub-verbindingen>Uw GitHub Enterprise-account verbinden of kies uit de andere verificatieopties. Dit wordt niet aanbevolen.

    Schermopname van Project-instellingen, geselecteerde integraties.

Verbinding maken met OAuth

Kies de configuratie die u hebt ingesteld in stap 4 van uw OAuth-configuratie registreren in Azure DevOps Server. Selecteer vervolgens Verbinding maken.

Schermopname van het dialoogvenster Nieuwe GitHub Enterprise-verbinding.

Verbinding maken met een persoonlijk toegangstoken

  1. Zie Een persoonlijk toegangstoken maken om een PAT te maken.

    Tip

    Wanneer u uw GitHub PAT maakt, moet u ervoor zorgen dat u deze bereiken opneemt: repo, admin:repo_hook, read:user, user:email.

  2. Voer de URL in voor uw GitHub Enterprise-server en de referenties voor het persoonlijke toegangstoken die door die server worden herkend. En selecteer vervolgens Verbinding maken.

Schermopname van aanmelden met PAT.

Verbinding maken met GitHub-referenties

  1. Voer de URL in voor uw GitHub Enterprise-server en de beheerdersaccountreferenties die door die server worden herkend. En kies vervolgens Verbinding maken.

Schermopname van aanmelden met GitHub-referenties.

  1. Het dialoogvenster bevat alle opslagplaatsen waarvoor u GitHub-beheerrechten hebt. U kunt schakelen tussen Mine en All om te bepalen of anderen worden weergegeven en controleer vervolgens de waarden die u wilt toevoegen. Kies Opslaan wanneer u klaar bent.

    Schermopname van opslagplaatsen die u wilt toevoegen.

  2. Als u voor het eerst verbinding wilt maken met een GitHub-account of -organisatie vanuit Azure Boards, installeert u ook de Azure Boards-app voor GitHub. Voltooi de integratie door de procedures te volgen die worden beschreven in De verbinding bevestigen.

Verbindingsproblemen oplossen

De Integratie van Azure Boards-GitHub is afhankelijk van verschillende verificatieprotocollen ter ondersteuning van de verbinding. Wijzigingen in het machtigingsbereik of de verificatiereferenties van een gebruiker kunnen leiden tot intrekking van de GitHub-opslagplaatsen die zijn verbonden met Azure Boards.

Zie Azure Boards-GitHub-integratie voor een overzicht van de integratie die door de Azure Boards-app voor GitHub wordt ondersteund.

Ondersteunde verificatieopties

De volgende verificatieopties worden ondersteund op basis van het GitHub-platform waarmee u verbinding wilt maken.

Platform

GitHub.com

GitHub Enterprise Server

Azure DevOps Services

  • GitHub.com gebruikersaccount
  • Persoonlijk toegangstoken (PAT)
  • OAuth
  • TIKKEN
  • GitHub-referenties

Azure DevOps Server 2020

Niet van toepassing

  • TIKKEN
  • GitHub-referenties

Azure DevOps Server 2019

Niet van toepassing

  • OAuth
  • TIKKEN
  • GitHub-referenties

Notitie

Met de Azure Boards-app voor GitHub kunnen Azure Boards en Azure DevOps Services worden geïntegreerd met GitHub.com- en GitHub Enterprise Server-opslagplaatsen. Azure DevOps Server 2019 en latere versies ondersteunen alleen integratie met GitHub Enterprise Server-opslagplaatsen. Integratie met andere Git-opslagplaatsen wordt niet ondersteund.

Toegangsproblemen oplossen

Wanneer de Azure Boards-verbinding met GitHub geen toegang meer heeft, wordt er een waarschuwingsstatus weergegeven in de gebruikersinterface met een red-X. Beweeg de muisaanwijzer over de waarschuwing en geeft aan dat de referenties niet meer geldig zijn. U kunt het probleem oplossen door de verbinding te verwijderen en een nieuwe verbinding opnieuw te maken.

Schermopname van mislukte verbinding.

Wanneer de Azure Boards-verbinding met GitHub geen toegang meer heeft, wordt er een waarschuwingsstatus weergegeven in de gebruikersinterface met een red-X met knopinfo, zoals Kan geen verbinding maken met GitHub.

Houd rekening met de volgende oplossingen:

  • Als de verbinding gebruikmaakt van OAuth:

    • De Azure Boards-toepassing heeft de toegang geweigerd voor een van de opslagplaatsen.

    • GitHub is mogelijk niet beschikbaar/onbereikbaar. Deze onbeschikbaarheid kan worden veroorzaakt door een storing in een service of een on-premises probleem met een infrastructuur/netwerk. U kunt de servicestatus controleren via de volgende koppelingen:

      Verwijder en maak de verbinding met de GitHub-opslagplaats opnieuw. Deze opnieuw gemaakte verbinding zorgt ervoor dat GitHub wordt gevraagd om Azure Boards opnieuw te autoriseren.

  • Als de verbinding gebruikmaakt van een PAT:

    • De PAT is ingetrokken of de vereiste machtigingsbereiken zijn gewijzigd en zijn onvoldoende.

    • De gebruiker is mogelijk beheerdersmachtigingen kwijtgeraakt in de GitHub-opslagplaats.

      Maak de PAT opnieuw en zorg ervoor dat het bereik voor het token de vereiste machtigingen bevat: repo, read:user, user:email, admin:repo_hook. Zie Aanbevolen procedures voor het gebruik van PAT'svoor meer informatie.

XML-definities bijwerken voor geselecteerde typen werkitems

Als uw organisatie het bijhouden van werk aanpast met behulp van het gehoste XML- of on-premises XML-procesmodel en gitHub-koppelingstypen wil integreren in de sectie Ontwikkeling van werkitemformulieren, moet u de XML-definities voor de bijbehorende typen werkitems bijwerken.

Als u bijvoorbeeld gebruikersverhalen en fouten wilt koppelen aan GitHub-doorvoeringen en pull-aanvragen in de sectie Ontwikkeling van werkitemformulieren, moet u de XML-definities voor deze typen werkitems bijwerken.

Als u de XML-definities wilt wijzigen, voert u de stappen uit die worden beschreven in het gehoste XML-procesmodel. Voor elk type werkitem:

  1. Zoek de Group Label="Development" sectie.
  2. Voeg de volgende coderegels toe om de typen externe koppelingen, GitHub Commit en GitHub Pull Request te ondersteunen:

Deze integratie maakt het naadloos bijhouden van GitHub-activiteiten mogelijk rechtstreeks vanuit uw werkitems in Azure Boards.

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

Wanneer deze wordt bijgewerkt, wordt de sectie als volgt weergegeven.

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

Volgende stappen