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

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 >voor ontwikkelaarsinstellingen>Oauth-apps>nieuwe OAuth-app.

    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 Oauth-configuraties>voor beheerinstellingen>: Oauth-configuratie 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>Verbinding maken met uw GitHub Enterprise-account.

    Schermopname van Project-instellingen, geselecteerde integraties.

    Of kies een persoonlijk toegangstoken of gebruikersnaam en wachtwoord als u deze referenties gebruikt.

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 een gebruikersnaam en wachtwoord

  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 gebruikersnaam en wachtwoord.

  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
  • Gebruikersnaam plus wachtwoord

Azure DevOps Server 2020

Niet van toepassing

  • TIKKEN
  • Gebruikersnaam plus wachtwoord

Azure DevOps Server 2019

Niet van toepassing

  • OAuth
  • TIKKEN
  • Gebruikersnaam plus wachtwoord

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 mogelijk ingetrokken of de vereiste machtigingsbereiken zijn gewijzigd en zijn onvoldoende.

    • De gebruiker heeft mogelijk beheerdersmachtigingen voor de GitHub-opslagplaats verloren.

      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.

XML-definities bijwerken voor geselecteerde typen werkitems

Als uw organisatie het gehoste XML- of on-premises XML-procesmodel gebruikt om de ervaring voor het bijhouden van werk aan te passen en u de GitHub-koppelingstypen wilt koppelen en weergeven uit de sectie Ontwikkeling in de werkitemformulieren, moet u de XML-definities voor de typen werkitems bijwerken.

Als u bijvoorbeeld gebruikersverhalen en bugs wilt koppelen aan GitHub-doorvoeringen en pull-aanvragen uit de sectie Ontwikkeling , moet u de XML-definities voor gebruikersverhalen en bugs bijwerken.

Volg de volgorde van taken in het gehoste XML-procesmodel om de XML-definities bij te werken. Zoek voor elk werkitemtype de Group Label="Development" sectie en voeg de volgende twee regels toe in de volgende codesyntaxis ter ondersteuning van de typen externe koppelingen: GitHub Commit en GitHub Pull Request.

             <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