Share via


Verbinding maken Azure Boards naar GitHub (cloud)

Azure DevOps Services

Gebruik GitHub.com opslagplaatsen voor uw softwareontwikkeling en uw Azure Boards-project om uw werk te plannen en bij te houden. Verbinding maken uw project en opslagplaats zodat uw GitHub-doorvoeringen en pull-aanvragen worden gekoppeld aan uw werkitems in Azure Boards.

Notitie

Azure Boards en Azure DevOps Services ondersteunen integratie met GitHub.com- en GitHub Enterprise Server-opslagplaatsen. Als u verbinding wilt maken vanaf een on-premises Azure DevOps-server, raadpleegt u Verbinding maken Azure DevOps Server met GitHub Enterprise Server.

Vereisten

  • U moet een Azure Boards- of Azure DevOps-project hebben. Als u nog geen project hebt, maakt u er een.
  • U moet lid zijn van de groep Project Beheer istrators. Als u het project hebt gemaakt, hebt u machtigingen.
  • U moet een beheerder of eigenaar van de GitHub-opslagplaats zijn om verbinding mee te maken. U kunt verbinding maken met meerdere GitHub-opslagplaatsen zolang u een beheerder bent voor deze opslagplaatsen.

Verificatieopties

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

GitHub.com

GitHub Enterprise Server

Notitie

Als u ervoor kiest om Github te verbinden met PAT, moet u eenmalige aanmelding (SSO) configureren voor de PAT in uw GitHub-account. Dit is nodig om een lijst met opslagplaatsen van een organisatie op te halen waarvoor SAML-verificatie (Security Assertion Markup Language) is geconfigureerd.

Verbinding maken Azure Boards naar een GitHub-opslagplaats.

  1. Meld u aan bij uw Azure DevOps-project.

  2. Selecteer Project-instellingen>GitHub-verbindingen.

    Schermopname van het openen van Project Instellingen> GitHub-verbindingen.

  3. Als het de eerste keer is dat u verbinding maakt vanuit het project, kiest u Verbinding maken uw GitHub-account om uw Referenties voor uw GitHub-account te gebruiken.

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

    Anders kiest u Nieuwe verbinding en selecteert u uw verificatiemethode in het dialoogvenster Nieuwe Verbinding maken ion.

    Wanneer u verbinding maakt met uw GitHub-account, gebruikt u de referenties van uw GitHub-account om te verifiëren. Als u PAT wilt gebruiken, raadpleegt u Een GitHub-verbinding toevoegen met behulp van PAT. Als u verbinding wilt maken met een GitHub Enterprise Server, raadpleegt u Azure DevOps registreren in GitHub als een OAuth-app.

Een GitHub-verbinding met GitHub-referenties toevoegen

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

  1. Als u voor het eerst verbinding maakt met GitHub vanuit Azure Boards, wordt u gevraagd u aan te melden met uw GitHub-referenties. Kies een account waarvoor u een opslagplaatsbeheerder bent.

  2. Kies het GitHub-account of de organisatie waarmee u verbinding wilt maken. Alleen organisaties waarvoor u de eigenaar bent of waarvoor u een beheerder bent, worden vermeld.

    Als alle opslagplaatsen voor een organisatie al zijn verbonden met Azure Boards, ziet u het volgende bericht.

    Schermopname van het bericht waarin er geen opslagplaatsen meer zijn om verbinding te maken.

  3. Voer uw GitHub-referenties in. Als u tweeledige verificatie hebt ingeschakeld, voert u de verificatiecode in die u door GitHub hebt verzonden en kiest u Verifiëren. Anders herkent het systeem uw GitHub-organisatie automatisch als uw GitHub-account is gekoppeld aan uw Azure DevOps Services-account.

De opslagplaatsen kiezen

Zodra u bent geverifieerd, kunt u de opslagplaatsen selecteren waarmee u verbinding wilt maken.

  1. Het dialoogvenster GitHub-opslagplaatsen toevoegen wordt automatisch weergegeven en selecteert alle GitHub.com opslagplaatsen waarvoor u een beheerder bent voor de organisatie die u hebt geselecteerd. Hef de selectie van opslagplaatsen op die u niet wilt opnemen in de integratie.

    Schermopname van GitHub-opslagplaatsen.

    Tip

    U wordt aangeraden alleen een GitHub-opslagplaats te verbinden met projecten die zijn gedefinieerd in één Azure DevOps-organisatie. Verbinding maken dezelfde GitHub-opslagplaats naar projecten die zijn gedefinieerd in twee of meer Azure DevOps-organisaties, kunnen leiden tot onverwachte AB#-vermelding koppelen. Zie Problemen met GitHub & Azure Boards-integratie oplossen voor meer informatie.

    Als alle opslagplaatsen al zijn verbonden met de huidige of andere organisatie, wordt het volgende bericht weergegeven.

    Schermopname van het bericht waarin er geen opslagplaatsen meer zijn om verbinding te maken.

  2. Selecteer Opslaan als u klaar bent.

De verbinding bevestigen

  1. Controleer de GitHub-pagina die wordt weergegeven en kies goedkeuren, installeren en autoriseren.

    Schermopname van het bevestigen van GitHub-opslagplaatsen.

  2. Geef uw GitHub-wachtwoord op om te bevestigen.

  3. Wanneer u klaar bent, ziet u de nieuwe verbinding met de geselecteerde opslagplaatsen.

Schermopname van de lijst met verbonden opslagplaatsen.

Zie Opslagplaatstoegang tot Azure Boards wijzigen om de configuratie te wijzigen of de Azure Boards-app voor GitHub te beheren.

Een GitHub-verbinding toevoegen met pat

U wordt aangeraden uw GitHub-accountreferenties te gebruiken om verbinding te maken met uw GitHub-opslagplaats. Als u echter een PAT wilt gebruiken, doet u dit door deze procedures te volgen.

Tip

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

  1. Kies persoonlijk toegangstoken.

    Schermopname van het dialoogvenster Nieuwe GitHub-verbinding, waarbij u persoonlijk toegangstoken kiest.

    Als u een GitHub PAT wilt maken, gaat u naar GitHub Developer Instellingen > Persoonlijke toegangstokens.

  2. Voer de PAT in en kies Verbinding maken.

    Schermopname van ingevoerde PAT.

  3. Kies de opslagplaatsen die u met het project wilt verbinden door de procedures te volgen die eerder in dit artikel worden beschreven in De opslagplaatsen kiezen.

  4. Als het de eerste keer is dat u verbinding maakt met een GitHub-account of -organisatie vanuit Azure Boards, moet u ook de Azure Boards-app voor GitHub installeren. Bevestig de verbinding eerder in dit artikel.

Azure DevOps registreren in GitHub als een OAuth-app

Als u van plan bent om OAuth te gebruiken om Azure DevOps 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 Services registreren

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

    Schermopname van aanmelden voor GitHub Enterprise-server.

  2. Open Instellingen> Ontwikkelingsinstellingen>Oauth-apps>nieuwe OAuth-app.

    Schermopname van de volgorde voor de nieuwe OAuth-app.

  3. Voer registratiegegevens in.

    Geef voor de URL van de startpagina de organisatie-URL van uw organisatie op.
    Gebruik voor de callback-URL voor autorisatie het volgende patroon om de URL samen te stellen.

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

    Voorbeeld:

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

    Schermopname van de app die moet worden geregistreerd.

  4. Selecteer Toepassing registreren.

  5. De client-id en het clientgeheim voor uw geregistreerde OAuth-toepassing worden weergegeven.

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

Uw OAuth-configuratie registreren in Azure DevOps Services

  1. Meld u aan bij de webportal voor Azure DevOps Services.

  2. Voeg de GitHub Enterprise Oauth-configuratie toe aan uw organisatie.

  3. Selecteer Oauth-configuraties>toevoegen in organisatie-instellingen.

    Schermopname van OAuth-configuraties van Open Organization Instellingen.

  4. Voer uw gegevens in en selecteer Vervolgens Maken.

    Dialoogvenster OAuth-configuraties.

Verbinding maken Azure DevOps Services naar GitHub Enterprise Server

Belangrijk

Als u Azure DevOps Services wilt verbinden met uw GitHub Enterprise Server, moet uw GitHub Enterprise Server voldoende toegankelijk zijn vanaf internet. Zorg ervoor dat Azure DNS de naam van uw GitHub Enterprise Server kan omzetten en dat uw firewall toegang toestaat vanuit IP-adressen van Azure Data Center. Zie IP-adresbereiken van Microsoft Azure Data Center om het IP-adresbereik te bepalen. Er is een veelvoorkomend foutbericht opgetreden wanneer er verbindingsproblemen zijn:

De externe naam kan niet worden omgezet: 'github-enterprise-server.contoso.com'

Als deze fout optreedt, controleert u of uw server toegankelijk is. Zie De veelgestelde vragen over Azure DNS voor meer informatie.

  1. Selecteer Project-instellingen>GitHub-verbindingen>GitHub Enterprise Server voor een eerste keer verbinding.

    Eerste verbinding, kies GitHub Enterprise Server.

    U kunt ook in het dialoogvenster Nieuwe GitHub-verbinding GitHub Enterprise Server selecteren.

    Schermopname van het dialoogvenster Nieuwe GitHub-verbinding en kies GitHub Enterprise Server.

  2. Selecteer de verificatiemethode.

    Schermopname van het dialoogvenster Verificatiemethode.

    Verbinding maken met OAuth

    Kies de configuratie die u hebt ingesteld in stap 4 van Het registreren van uw OAuth-configuratie in Azure DevOps Services en kies vervolgens Verbinding maken.

    Schermopname van het dialoogvenster Nieuwe GitHub Enterprise-verbinding.

    Verbinding maken met een persoonlijk toegangstoken

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

    Schermopname van het dialoogvenster Nieuwe GitHub Enterprise-verbinding, persoonlijke toegangstokenverbinding.

    Verbinding maken met een gebruikersnaam en wachtwoord

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

    Schermopname van het scherm Nieuwe GitHub Enterprise-verbinding, dialoogvenster Gebruikersnaamverbinding.

  3. 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 de vermelde opslagplaatsen.

    Tip

    U kunt alleen verbinding maken met opslagplaatsen die zijn gedefinieerd in één GitHub-organisatie. Als u een project wilt verbinden met andere opslagplaatsen die zijn gedefinieerd in een andere GitHub-organisatie, moet u een andere verbinding toevoegen.

  4. Als het uw eerste keer is dat u verbinding maakt met een GitHub-account of -organisatie vanuit Azure Boards, installeert u ook de Azure Boards-app voor GitHub. Bevestig de verbinding eerder in dit artikel.

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

Azure DevOps Server 2020

Niet van toepassing

  • PAT
  • Gebruikersnaam plus wachtwoord

Azure DevOps Server 2019

Niet van toepassing

  • OAuth
  • PAT
  • Gebruikersnaam plus wachtwoord

Notitie

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

Organisatietoegang tot Azure Boards verlenen

Als de integratie tussen Azure Boards en GitHub niet werkt zoals verwacht, controleert u of u toegang tot de organisatie hebt verleend.

  1. Open Instellingen vanuit de GitHub-webportal vanuit het profielmenu.
    Schermopname van het geopende profiel en kies Instellingen.

  2. Selecteer Toepassingen onder Geautoriseerde OAuth-apps>voor Integraties>Azure Boards.

  3. Los onder Toegang tot de organisatie eventuele problemen op. Selecteer Verlenen om toegang te verlenen aan organisaties die een toegangsaanvraag in behandeling hebben.

    Schermopname van toegang tot de organisatie met organisaties zonder toegang.

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.

Bekijk de volgende items om dit probleem op te lossen:

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

    • De gebruiker heeft mogelijk geen beheerdersmachtigingen voor 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.

Verbroken GitHub Enterprise Server-verbinding oplossen

Als u bent gemigreerd van Azure DevOps Server naar Azure DevOps Services met een bestaande GitHub Enterprise Server-verbinding, werkt uw bestaande verbinding niet zoals verwacht. Vermeldingen van werkitems in GitHub worden mogelijk vertraagd of worden nooit weergegeven in Azure DevOps Services. Dit probleem treedt op omdat de callback-URL die is gekoppeld aan GitHub niet meer geldig is.

Houd rekening met de volgende oplossingen:

  • Verwijder de verbinding en maak deze opnieuw: verwijder de verbinding en maak deze opnieuw met de GitHub Enterprise Server-opslagplaats. Volg de volgorde van de stappen in Verbinding maken uit de documentatie van Azure Boards.

  • Corrigeer de URL van de webhook: Ga naar de pagina met instellingen voor de opslagplaats van GitHub en bewerk de URL van de webhook, die verwijst naar de gemigreerde URL van de Azure DevOps-organisatie: https://dev.azure.com/{OrganizationName}/_apis/work/events?api-version=5.2-preview

Verbinding maken naar meerdere Azure DevOps-organisaties

Als u uw GitHub-opslagplaats verbindt met twee of meer projecten die zijn gedefinieerd in meer dan één Azure DevOps-organisatie, zoals dev.azure.com/Contoso en dev.azure.com/Fabrikam, krijgt u mogelijk onverwachte resultaten bij het gebruik van AB# -vermeldingen die zijn gekoppeld aan werkitems. Dit probleem treedt op omdat werkitem-id's niet uniek zijn in Azure DevOps-organisaties, dus AB#12 kan verwijzen naar een werkitem in de Contoso- of Fabrikam-organisatie. Wanneer een werkitem wordt vermeld in een doorvoerbericht of pull-aanvraag, kunnen beide organisaties proberen een koppeling naar een werkitem te maken met een overeenkomende id als deze bestaat.

Over het algemeen wil een gebruiker een AB# -vermelding koppelen aan één werkitem in een van de projecten. Maar als er in beide accounts een werkitem van dezelfde id bestaat, worden koppelingen gemaakt voor beide werkitems, waardoor er waarschijnlijk verwarring ontstaat.

Op dit moment is er geen manier om dit probleem te omzeilen. Daarom raden we u aan om slechts één GitHub-opslagplaats te verbinden met één Azure DevOps-organisatie.

Notitie

Wanneer u verbinding maakt met behulp van de Azure Boards-app voor GitHub, voorkomt de app dat u verbinding maakt met twee verschillende organisaties. Als een GitHub-opslagplaats onjuist is verbonden met de verkeerde Azure DevOps-organisatie, moet u contact opnemen met de eigenaar van die organisatie om de verbinding te verwijderen voordat u de opslagplaats kunt toevoegen aan de juiste Azure DevOps-organisatie.

XML-definities bijwerken voor geselecteerde typen werkitems

Werk de XML-definities voor de typen werkitems bij 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 te koppelen en weer te geven in de sectie Ontwikkeling in de werkitemformulieren.

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 de sectie wordt bijgewerkt, wordt deze 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>  

Veelgestelde vragen (veelgestelde vragen)

V: Sommige gebruikers in Azure DevOps hebben GitHub-identiteiten. Moet ik ze toevoegen als nieuwe GitHub-gebruikers in mijn organisatie?

A: Nee. Vraag uw gebruikers zich af te melden en meld u vervolgens vanuit een nieuwe browsersessie weer aan bij de organisatie met hun GitHub-referenties. Met deze actie kunnen gebruikers worden vastgesteld dat ze geldige GitHub-identiteiten hebben.

V: Ik ben een organisatie Beheer istrator en ik heb het beleid ingeschakeld waarmee GitHub-gebruikers kunnen worden uitgenodigd. Waarom kan ik geen nieuwe GitHub-gebruikers uitnodigen?

A: Zodra de instelling is gewijzigd, meldt u zich af bij Azure DevOps en meldt u zich vervolgens weer aan bij de organisatie dev.azure.com/{organizationName} of organizationName.visualstudio.com met uw GitHub-referenties.

V: Ik heb me aangemeld met mijn GitHub-referenties, maar waarom kan ik Geen GitHub-gebruikers uitnodigen?

A: Alleen organisatie- of project-Beheer istrators kunnen nieuwe gebruikers uitnodigen om lid te worden van de organisatie. Mogelijk bent u niet gemachtigd om nieuwe gebruikers toe te voegen. Neem contact op met uw beheerder om u de juiste machtigingen te geven of vraag hem of haar om de gebruiker voor u toe te voegen.

Volgende stappen