Compartir a través de


Conexión de Azure DevOps Server a GitHub (en el entorno local)

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

Al conectar el proyecto de Azure DevOps Server con los repositorios de GitHub, se ayuda a vincular las confirmaciones y las solicitudes de incorporación de cambios de GitHub con los elementos de trabajo. Puede usar GitHub para el desarrollo de software y Azure Boards para planificar el trabajo y realizar su seguimiento.

Nota:

Azure DevOps Server admite la integración con repositorios de GitHub.com y GitHub Enterprise Server. Para conectarse desde Azure DevOps Services, consulte Conexión de Azure Boards a GitHub.

Requisitos previos

Categoría Requisitos
Permisos - Miembro del grupo Administradores de la colección de proyectos y del grupo de Colaboradores del proyecto. Si ha creado el proyecto, tiene permisos.
- Administrador del servidor de GitHub Enterprise al que se conecta.
Membresía del proyecto Miembro del proyecto.
integración de con GitHub - Parche 2 de Azure DevOps Server 2020.1.1. Sin esta revisión, solo podrá conectarse a los repositorios de GitHub Enterprise Server.
- Aplicación Azure Boards para GitHub instalada en las organizaciones o la cuenta de GitHub.

Opciones de autenticación

Se admiten las siguientes opciones de autenticación:

Nota:

OAuth ya no se admite en Azure DevOps Server 2020.

Conexión de Azure DevOps Server a GitHub Enterprise Server

Puede conectar hasta 250 repositorios de GitHub a un proyecto de Azure Boards.

Nota:

  • La conexión a más de 100 repositorios de GitHub requiere Azure DevOps Server 2020.1 o una versión posterior.
  • La conexión a los repositorios de GitHub.com requiere Azure DevOps Server 2020.1.1, revisión 2 o una versión posterior.
  1. Abra el portal web de Azure DevOps Server.

  2. Seleccione el logotipo de Azure DevOps para abrir Proyectos y, a continuación, elija el proyecto de Azure Boards que desea configurar para conectarse a los repositorios de GitHub Enterprise.

  3. Seleccione Configuración del proyecto>Conexiones de GitHub.

    Captura de pantalla de la apertura de la configuración del proyecto, conexiones de GitHub.

  4. Si es la primera vez que realiza una conexión desde el proyecto, elija el método de autenticación que desea usar para realizar la conexión:

    Captura de pantalla de la primera conexión con credenciales de GitHub.

    De lo contrario, seleccione Nueva conexión y seleccione el método de autenticación en el cuadro de diálogo Nueva conexión.

Conexión de Azure DevOps Server con un token de acceso personal de GitHub

  1. Para crear un PAT de GitHub, consulte Creación de un PAT de GitHub.

    Sugerencia

    Al crear el PAT de GitHub, asegúrese de que incluye estos ámbitos: repo, admin:repo_hook, read:user, user:email.

  2. Escriba la dirección URL del servidor de GitHub Enterprise y las credenciales del token de acceso personal reconocidas por ese servidor. Y, a continuación, seleccione Conectar.

    Captura de pantalla del inicio de sesión con PAT de GitHub.

Conexión de Azure DevOps Server con credenciales de GitHub

  1. Escriba la dirección URL del servidor de GitHub Enterprise y las credenciales de la cuenta de administrador reconocidas por ese servidor. A continuación, seleccione Conectar.

    Captura de pantalla del inicio de sesión con las credenciales de GitHub.

  2. En el cuadro de diálogo se enumeran todos los repositorios para los que tiene derechos de administración de GitHub. Puede alternar entre Míos y Todos para determinar si aparecen otros y, a continuación, comprobar los que desea agregar. Seleccione Guardar cuando haya terminado.

    Captura de pantalla de los repositorios que se van a seleccionar para agregar.

  3. Para conectarse a una cuenta u organización de GitHub desde Azure Boards por primera vez, también debe instalar la aplicación Azure Boards para GitHub. Complete la integración siguiendo los procedimientos que se indican en Confirmación de la conexión.

Solución de problemas de conexión

La integración de Azure Boards y GitHub se basa en varios protocolos de autenticación para admitir la conexión. Los cambios en el ámbito de permisos o las credenciales de autenticación de un usuario pueden provocar la revocación de los repositorios de GitHub conectados a Azure Boards.

Para información general sobre la integración que admite la aplicación Azure Boards para GitHub, consulte Integración de Azure Boards con GitHub.

Cuando la conexión de Azure Boards a GitHub ya no tiene acceso, muestra un estado de alerta en la interfaz de usuario con una X roja. Mantenga el puntero sobre la alerta e indicará que las credenciales ya no son válidas. Para corregir el problema, quite la conexión y vuelva a crear una nueva.

Captura de pantalla de conexión con error.

Considere las siguientes soluciones:

  • Si la conexión usa OAuth:

    • La aplicación Azure Boards tenía acceso denegado para uno de los repositorios.

    • GitHub podría no estar disponible o no accesible. Esta falta de disponibilidad podría deberse a una interrupción en el servicio o un problema de infraestructura o red en el entorno local. Puede comprobar el estado del servicio en los vínculos siguientes:

      Elimine la conexión con el repositorio de GitHub y vuélvala a crear. Esta conexión recién creada hace que GitHub pida que vuelva a autorizar Azure Boards.

  • Si la conexión usa un PAT de GitHub:

    • El PAT de GitHub se revocó o los ámbitos de permisos necesarios cambiaron y no son suficientes.

    • El usuario quizá perdió permisos administrativos en el repositorio de GitHub.

      Vuelva a crear el PAT de GitHub y asegúrese de que el ámbito del token incluye los permisos necesarios: repo, read:user, user:email, admin:repo_hook.

Actualización de las definiciones XML para tipos de elementos de trabajo elegidos

Si su organización personaliza el seguimiento del trabajo mediante el modelo de proceso XML hospedado o XML local y quiere integrar tipos de vínculo de GitHub en la sección Desarrollo de formularios de elementos de trabajo, debe actualizar las definiciones XML para los tipos de elementos de trabajo correspondientes.

Por ejemplo, para vincular casos de usuario y errores a confirmaciones y solicitudes de incorporación de cambios en la sección Desarrollo de formularios de elementos de trabajo, debe actualizar las definiciones XML de estos tipos de elementos de trabajo.

Para modificar las definiciones XML, realice los pasos descritos en Modelo de proceso XML hospedado. Para cada tipo de elemento de trabajo:

  1. Localice la sección Group Label="Development".
  2. Para admitir los tipos de vínculo externo, la confirmación de GitHub y la solicitud de incorporación de cambios de GitHub, agregue las siguientes líneas de código:

Esta integración permite realizar un seguimiento sin problemas de las actividades de GitHub directamente desde los elementos de trabajo de Azure Boards.

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

Cuando se actualiza, la sección debe aparecer como se muestra a continuación.

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

Pasos siguientes