Delen via


Azure Boards verbinden met 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. Verbind 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 Azure DevOps Server verbinden met GitHub Enterprise Server.

Vereisten

  • Projectvereisten: Een Azure DevOps-project hebben. Als u geen project hebt, maakt u er een.

  • Machtigingen:

    • Lid zijn van de groep Projectbeheerders. Als u het project hebt gemaakt, hebt u machtigingen.
    • Wees een beheerder of eigenaar van de GitHub-opslagplaats 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 een PAT, configureert u eenmalige aanmelding (SSO) voor de PAT in uw GitHub-account. Deze configuratie is nodig om een lijst met opslagplaatsen op te halen uit een organisatie waarvoor SAML-verificatie (Security Assertion Markup Language) is ingeschakeld.

Azure Boards verbinden met een GitHub-opslagplaats.

  1. Meld u aan bij uw project (https://dev.azure.com/{Your_Organization/Your_Project}).

  2. Selecteer Project-instellingen>GitHub-verbindingen.

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

  3. Als dit de eerste keer is dat u verbinding maakt vanuit het project, selecteert u Uw GitHub-account verbinden om de referenties van 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.

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

Een GitHub-verbinding met GitHub-referenties toevoegen

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

  1. Als dit de eerste keer is dat u verbinding maakt met GitHub vanuit Azure Boards, meldt u zich aan met uw GitHub-referenties. Kies een account waarvoor u een opslagplaatsbeheerder bent.

  2. Selecteer 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 door GitHub wordt verzonden en selecteert u Verifiëren. Zo niet, dan herkent het systeem uw GitHub-organisatie automatisch als uw GitHub-account is gekoppeld aan uw Azure DevOps Services-account.

GitHub-opslagplaatsen toevoegen

Nadat 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 beheerder bent in de geselecteerde organisatie. Hef de selectie op van opslagplaatsen die u niet wilt opnemen in de integratie.

    Schermopname van GitHub-opslagplaatsen.

    Tip

    We raden u aan om een GitHub-opslagplaats te verbinden met projecten binnen één Azure DevOps-organisatie om onverwachte AB# -vermeldingen te voorkomen. Het verbinden van dezelfde GitHub-opslagplaats met projecten in meerdere Azure DevOps-organisaties kan problemen veroorzaken. Zie Problemen met GitHub & Azure Boards-integratie oplossen voor meer informatie.

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

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

  2. Nadat u de selecties hebt gemaakt, selecteert u Opslaan.

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 Referenties voor uw GitHub-account te gebruiken om verbinding te maken met uw GitHub-opslagplaats. Als u een PAT wilt gebruiken, voert u de volgende stappen uit.

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 Persoonlijke toegangstokens voor GitHub Developer Settings>.

  2. Voer de PAT in en selecteer Verbinding maken.

    Schermopname van ingevoerde PAT.

  3. Selecteer de opslagplaatsen waarmee u verbinding wilt maken met het project door de procedures te volgen die worden beschreven in De opslagplaatsen kiezen die eerder in dit artikel zijn beschreven.

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

Azure DevOps registreren in GitHub als een OAuth-app

Als u OAuth wilt 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>Voor ontwikkelaars>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 voor open organisatie-instellingen.

  4. Voer uw gegevens in en selecteer Vervolgens Maken.

    Dialoogvenster OAuth-configuraties.

Azure DevOps Services verbinden met GitHub Enterprise Server

Belangrijk

Als u Azure DevOps Services wilt verbinden met uw GitHub Enterprise Server, moet u ervoor zorgen dat uw GitHub Enterprise Server toegankelijk is vanaf internet. Controleer of Azure DNS de naam van uw GitHub Enterprise Server kan omzetten en of 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. Een veelvoorkomend foutbericht voor connectiviteitsproblemen is:

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

Als deze fout optreedt, controleert u de toegankelijkheid van uw server. 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 vervolgens 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 maakt gebruik van verschillende verificatieprotocollen om de verbinding te onderhouden. Wijzigingen in het machtigingsbereik of de verificatiereferenties van een gebruiker kunnen de GitHub-opslagplaatsen intrekken die zijn verbonden met Azure Boards.

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

Ondersteunde verificatieopties

De volgende ondersteunde verificatieopties zijn afhankelijk van het GitHub-platform waarmee u verbinding maakt:

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.

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 in uw profielmenu vanuit de GitHub-webportal.
    Schermopname van het geopende profiel, 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 een waarschuwingsstatus met een red-X weergegeven in de gebruikersinterface. Beweeg de muisaanwijzer over de waarschuwing om te zien dat de referenties niet meer geldig zijn. Als u het probleem wilt oplossen, verwijdert u de verbinding en maakt u een nieuwe.

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 mogelijk niet zoals verwacht. Vermeldingen van werkitems in GitHub kunnen worden vertraagd of worden nooit weergegeven in Azure DevOps Services 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 Connect vanuit 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 met meerdere Azure DevOps-organisaties

Het verbinden van uw GitHub-opslagplaats met projecten in meerdere Azure DevOps-organisaties, zoals dev.azure.com/Contoso en dev.azure.com/Fabrikam, kan onverwachte resultaten veroorzaken met AB# -vermeldingen. Werkitem-id's zijn niet uniek in Azure DevOps-organisaties, dus AB#12 kan verwijzen naar een werkitem in Contoso of Fabrikam. Wanneer een werkitem wordt vermeld in een doorvoerbericht of pull-aanvraag, kunnen beide organisaties proberen een koppeling te maken naar een werkitem met de overeenkomende id, wat verwarring veroorzaakt.

U kunt dit probleem voorkomen door één GitHub-opslagplaats te verbinden met slechts één Azure DevOps-organisatie.

Notitie

Wanneer u verbinding maakt met behulp van de Azure Boards-app voor GitHub, voorkomt de app verbindingen met meerdere organisaties. Als een GitHub-opslagplaats is verbonden met de verkeerde Azure DevOps-organisatie, neemt u contact op met de eigenaar van die organisatie om de verbinding te verwijderen voordat u de opslagplaats toevoegt 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 gebruikmaakt van het gehoste XML- of on-premises XML-procesmodel om de ervaring voor het bijhouden van werk aan te passen en de Koppelingstypen van GitHub te koppelen uit de sectie Ontwikkeling in de werkitemformulieren.

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

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 codesyntaxis ter ondersteuning van de typen externe koppelingen: GitHub Commit en GitHub Pull Request.

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

Na het bijwerken moet de sectie er als volgt uitzien.

<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

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

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

V: Ik ben een organisatiebeheerder en ik heb het beleid ingeschakeld voor het uitnodigen van GitHub-gebruikers. Waarom kan ik geen nieuwe GitHub-gebruikers uitnodigen?

A: Nadat u de instelling hebt 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 vanuit een nieuwe browsersessie.

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

A: Alleen organisatie- of projectbeheerders kunnen nieuwe gebruikers uitnodigen om lid te worden van de organisatie. Mogelijk hebt u niet de vereiste machtigingen om nieuwe gebruikers toe te voegen. Neem contact op met de beheerder om de benodigde machtigingen te verkrijgen of vraag hem of haar om de gebruiker voor u toe te voegen.

Volgende stappen