Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Azure DevOps Services
Use GitHub.com repositorios para el desarrollo de software y el proyecto de Azure Boards para planear y realizar un seguimiento del trabajo. Conecte su proyecto y repositorio para que las confirmaciones y solicitudes de extracción de GitHub se vinculen a los elementos de trabajo en Azure Boards.
Nota
Azure Boards y Azure DevOps Services admiten la integración con repositorios de GitHub.com y GitHub Enterprise Server. Si quiere conectarse desde un Azure DevOps Server local, consulte Connect Azure DevOps Server a GitHub Enterprise Server.
Requisitos previos
| Categoría | Requisitos |
|---|---|
| Permisos | - Miembro del grupo Administradores de la colección de proyectos Si creó el proyecto, tiene permisos. - Administrator o owner del repositorio de GitHub al que conectarse. Puede conectarse a varios repositorios de GitHub siempre que sea administrador para esos repositorios. |
| Pertenencia al proyecto | Miembro del proyecto. |
Opciones de autenticación
Las siguientes opciones de autenticación se admiten en función de la plataforma de GitHub a la que desea conectarse.
GitHub.com
GitHub Enterprise Server
- OAuth (preferido, se requiere el registro)
- PAT
- credenciales de GitHub
Nota
Si decide conectar GitHub con un PAT, configure el inicio de sesión único (SSO) para el PAT en la cuenta de GitHub. Esta configuración es necesaria para recuperar una lista de repositorios de una organización con la autenticación SSO del Lenguaje de Marcado para Confirmaciones de Seguridad (SAML) habilitada.
Conexión de Azure Boards a un repositorio de GitHub
Inicie sesión en el proyecto (
https://dev.azure.com/{Your_Organization/Your_Project}).Seleccione Configuración del proyecto>GitHub conexiones.
Si es la primera vez que se conecta desde el proyecto, seleccione Conecte la cuenta de GitHub para usar las credenciales de la cuenta de GitHub.
De lo contrario, elija
Nueva conexión y seleccione el método de autenticación en el cuadro de diálogo Nueva conexión.Al conectarse con la cuenta de GitHub, use las credenciales de GitHub para autenticarse. Para usar un PAT, consulte Agregar una conexión de GitHub mediante PAT. Para conectarse a un GitHub Enterprise Server, consulte Register Azure DevOps en GitHub como una aplicación de OAuth.
Adición de una conexión de GitHub con credenciales de GitHub
Puede conectar hasta 1000 repositorios GitHub a un proyecto de Azure Boards.
Si es la primera vez que se conecta a GitHub desde Azure Boards, inicie sesión con sus credenciales de GitHub. Elija una cuenta en la que sea administrador del repositorio.
Seleccione la cuenta de GitHub u organización que desea conectar. Solo se muestran las organizaciones que posee o de las que es administrador.
Si todos los repositorios de una organización ya están conectados a Azure Boards, se muestra el siguiente mensaje:
Escriba las credenciales de GitHub. Si tiene habilitada la autenticación en dos fases, escriba el código de autenticación enviado por GitHub y seleccione Verify. Si no es así, el sistema reconoce automáticamente tu organización de GitHub ya que tu cuenta de GitHub está asociada a tu cuenta de Azure DevOps Services.
Adición de repositorios de GitHub
Una vez autenticado, puede seleccionar los repositorios a los que se quiere conectar.
El cuadro de diálogo Add GitHub Repositorios se muestra automáticamente y selecciona todos los repositorios de GitHub.com para los que es administrador de la organización seleccionada. Anule la selección de los repositorios que no quiera incluir en la integración.
Sugerencia
Para evitar la vinculación inesperada de menciones AB#, se recomienda conectar un repositorio de GitHub a los proyectos dentro de una única organización de Azure DevOps. La conexión del mismo repositorio de GitHub a proyectos de varias organizaciones Azure DevOps puede causar problemas. Para obtener más información, consulta Solucionar problemas de integración de GitHub y Azure Boards.
Si todos los repositorios ya se han conectado a la organización actual o a otra organización, aparecerá el siguiente mensaje:
Después de realizar las selecciones pertinentes, seleccione Guardar.
Confirmación de la conexión
Revise la página de GitHub que se muestra y, a continuación, elija
Approve, Install, & Autorice .
Proporcione las credenciales de GitHub para confirmar.
Cuando haya terminado, debería ver la nueva conexión con los repositorios seleccionados.
Para cambiar la configuración o administrar la aplicación Azure Boards para GitHub, consulte Cambiar el acceso al repositorio para Azure Boards.
Adición de una conexión de GitHub mediante PAT
Importante
Considere usar los más seguros tokens de Microsoft Entra en lugar de los tokens de acceso personal. Para obtener más información, consulte Reducir el uso de PAT. Revise las instrucciones de autenticación para elegir el mecanismo de autenticación adecuado para sus necesidades.
Se recomienda usar las credenciales de la cuenta de GitHub para conectarse al repositorio de GitHub.
Sugerencia
Al crear su GitHub PAT, asegúrese de incluir estos alcances: repo, read:user, user:email, admin:repo_hook.
Seleccione Token de acceso personal.
** Para crear un PAT de GitHub, vaya a Configuración del desarrollador de GitHub > a Tokens de acceso personal.
Especifique el PAT y seleccione Conectar.
Seleccione los repositorios que desea conectar al proyecto siguiendo los procedimientos descritos en Elección de los repositorios anteriormente en este artículo.
Si es la primera vez que se conecta a una cuenta de GitHub u organización desde Azure Boards, instale la aplicación de Azure Boards para GitHub. Confirme la conexión anteriormente en este artículo.
Registro de Azure DevOps en GitHub como una aplicación de OAuth
Para usar OAuth para conectarse Azure DevOps con su GitHub Enterprise Server, registre primero la aplicación como una aplicación de OAuth. Para más información, consulte Creación de una aplicación de OAuth.
Registro de Azure DevOps Services
Inicie sesión en el portal web del servidor GitHub Enterprise.
Abra Configuración>Configuración del desarrollador>Aplicaciones de Oauth>Nueva aplicación de OAuth.
Introduzca la información de registro.
En la dirección URL de la página principal, especifique la dirección URL de la organización.
En la dirección URL de devolución de llamada de autorización, use el siguiente patrón para construir la dirección URL.{Azure DevOps Services Organization URL}/_admin/oauth2/callbackPor ejemplo:
https://dev.azure.com/fabrikam/_admin/oauth2/callback
Seleccione Register application (Registrar aplicación).
Aparecerán el Id. de cliente y el secreto de cliente de la aplicación de OAuth registrada.
Registrar la configuración de OAuth en Azure DevOps Services
Inicie sesión en el portal web para Azure DevOps Services.
Agregue la configuración de GitHub Enterprise Oauth a su organización.
En Configuración de la organización, seleccione Configuraciones de OAuth>Agregar configuración de Oauth.
Introduzca la información y, a continuación, seleccione Crear.
Conexión de Azure DevOps Services a GitHub Enterprise Server
Importante
Para conectar Azure DevOps Services a su GitHub Enterprise Server, asegúrese de que GitHub Enterprise Server sea accesible desde Internet. Compruebe que Azure DNS puede resolver el nombre de GitHub Enterprise Server, y que el firewall permite el acceso desde direcciones IP del centro de datos de Azure. Para determinar el intervalo de direcciones IP, consulte Microsoft Azure Data Center IP Ranges. Un mensaje de error común para problemas de conectividad es:
No se pudo resolver el nombre remoto: "github-enterprise-server.contoso.com"
Si encuentra este error, compruebe que el servidor es accesible. Para obtener más información, consulte Azure DNS preguntas más frecuentes.
Seleccione Configuración del proyecto>Conexiones de GitHub>GitHub Enterprise Server para una conexión inicial.
O bien, en el cuadro de diálogo Nueva conexión de GitHub, seleccione GitHub Enterprise Server.
Seleccione el método de autenticación.
Conectar con OAuth
Elija la configuración que configuró en Paso 4 de Registrar la configuración de OAuth en Azure DevOps Services y, a continuación, elija Connect.
Conectarse con un token de acceso personal
Escriba la dirección URL del servidor GitHub Enterprise y las credenciales del token de acceso personal reconocidas por ese servidor. A continuación, seleccione Conectar.
Conectar con credenciales de GitHub
Escriba la dirección URL del servidor GitHub Enterprise y las credenciales de la cuenta de administrador reconocidas por ese servidor y, a continuación, seleccione Connect.
En el cuadro de diálogo se enumeran todos los repositorios para los que tiene derechos de administración GitHub. Puede alternar entre Míos y Todos para determinar si aparecen otros y, a continuación, comprobar los que desea agregar. Cuando haya terminado, haga clic en Guardar.
Sugerencia
Solo puede establecer una conexión a los repositorios definidos en una organización GitHub. Para conectar un proyecto a otros repositorios definidos en otra organización de GitHub, debe agregar otra conexión.
Si es la primera vez que se conecta a una cuenta de GitHub u organización desde Azure Boards, también instala la aplicación Azure Boards para GitHub. Confirme la conexión anteriormente en este artículo.
Solución de problemas de conexión
La integración Azure Boards-GitHub usa varios protocolos de autenticación para mantener la conexión. Los cambios en el ámbito de permisos o las credenciales de autenticación de un usuario pueden revocar los repositorios de GitHub conectados a Azure Boards.
Para obtener información general sobre la integración compatible con la aplicación de Azure Boards para GitHub, consulte Azure Boards-GitHub integración.
Opciones de autenticación admitidas
Las siguientes opciones de autenticación admitidas dependen de la plataforma de GitHub a la que se conecta:
Plataforma
GitHub.com
GitHub Enterprise Server
Azure DevOps Services
- GitHub.com cuenta de usuario
- Un token de acceso personal (PAT)
- OAuth
- PAT
- credenciales de GitHub
Azure DevOps Server 2020
No aplicable
- PAT
- credenciales de GitHub
Nota
compatibilidad con la integración de GitHub:
- Azure DevOps Services: se integra tanto con repositorios de GitHub.com como con GitHub Enterprise Server a través de la aplicación Azure Boards para GitHub.
- Azure DevOps Server 2020 y versiones posteriores: solo admite la integración con repositorios de GitHub Enterprise Server.
- Otros repositorios de Git: no se admite la integración.
Conceder acceso a la organización de Azure Boards
Si la integración entre Azure Boards y GitHub no funciona según lo previsto, compruebe que ha concedido acceso a la organización.
En GitHub portal web, abra Settings en el menú del perfil.
Seleccione Applications en Integrations>Authorized OAuth Apps>Azure Boards.
En Acceso de organización, resuelva cualquier problema que pueda aparecer. Seleccione Conceder para conceder acceso a las organizaciones que se muestran con una Solicitud de acceso pendiente.
Resolución de problemas de acceso
Cuando la conexión de Azure Boards a GitHub pierde acceso, un estado de alerta con una X roja aparece en la interfaz de usuario. Mantenga el puntero sobre la alerta para ver que las credenciales ya no son válidas. Para corregir el problema, quite la conexión y cree una nueva.
Considere estos puntos para resolver el problema:
Si la conexión usa OAuth:
La aplicación Azure Boards tenía denegado su acceso para uno de los repositorios.
GitHub podrían no estar disponibles o no accesibles. 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 y vuelva a crear la conexión al repositorio de GitHub. Esta conexión recreada hace que GitHub pida que vuelva a autorizar Azure Boards.
Si la conexión usa un PAT:
Se revocó el PAT o se cambiaron los ámbitos de permisos necesarios y son insuficientes.
Es posible que el usuario no tenga permisos de administrador en el repositorio de GitHub.
Vuelva a crear el PAT y asegúrese de que el ámbito del token incluye los permisos necesarios:
repo, read:user, user:email, admin:repo_hook. Para obtener más información, consulte Procedimientos recomendados mediante PAT.
Resolución de la conexión rota en GitHub Enterprise Server
Si ha migrado de Azure DevOps Server a Azure DevOps Services con una conexión existente de GitHub Enterprise Server, es posible que la conexión existente no funcione según lo previsto. Las menciones de elementos de trabajo dentro de GitHub pueden retrasarse o nunca aparecer en Azure DevOps Services porque la dirección URL de devolución de llamada asociada a GitHub ya no es válida. Considere las siguientes soluciones:
Elimine y vuelva a crear la conexión: elimine y vuelva a crear la conexión al repositorio de GitHub Enterprise Server. Siga la secuencia de pasos proporcionados en Connect desde Azure Boards documentación.
Fijo la dirección URL del webhook: vaya a la página de configuración del repositorio de GitHub y edite la dirección URL del webhook, apuntando a la dirección URL de la organización Azure DevOps migrada:
https://dev.azure.com/{OrganizationName}/_apis/work/events?api-version=5.2-preview
Conexión a varias organizaciones de Azure DevOps
Al conectar el repositorio de GitHub a proyectos de varias organizaciones de Azure DevOps, como dev.azure.com/Contoso y dev.azure.com/Fabrikam, esto puede provocar resultados inesperados con las menciones de AB#. Los identificadores de elemento de trabajo no son únicos en Azure DevOps organizaciones, por lo que AB#12 podría hacer referencia a un elemento de trabajo en Contoso o Fabrikam. Cuando se menciona un elemento de trabajo en un mensaje de confirmación o en una solicitud de incorporación de cambios, ambas organizaciones podrían intentar crear un vínculo a un elemento de trabajo con el identificador coincidente, lo que provoca confusión.
Para evitar este problema, conecte un único repositorio de GitHub a una sola organización Azure DevOps.
Nota
Al conectarse mediante la aplicación Azure Boards para GitHub, la aplicación impide las conexiones a varias organizaciones. Si un repositorio de GitHub está conectado a la organización Azure DevOps incorrecta, póngase en contacto con el propietario de esa organización para quitar la conexión antes de agregar el repositorio a la organización Azure DevOps correcta.
Actualización de las definiciones XML para tipos de elementos de trabajo elegidos
Actualice las definiciones XML de los tipos de elemento de trabajo si su organización usa el modelo de proceso XML hospedado o XML local para personalizar la experiencia de seguimiento del trabajo y vincular a y ver los tipos de vínculo de GitHub de la sección Desarrollo en los formularios de elemento de trabajo.
Por ejemplo, para vincular casos de usuario y errores a confirmaciones y solicitudes de incorporación de cambios de GitHub desde la sección Development, actualice las definiciones XML de casos de usuario y errores.
Siga la secuencia de tareas proporcionadas en el modelo de proceso XML hospedado para actualizar las definiciones XML. Para cada tipo de elemento de trabajo, busque la sección Group Label="Development" y agregue las dos líneas siguientes en la sintaxis de código para admitir los tipos de vínculo externo: GitHub Commit y GitHub solicitud de incorporación de cambios.
<ExternalLinkFilter Type="GitHub Pull Request" />
<ExternalLinkFilter Type="GitHub Commit" />
Después de actualizar, la sección debe aparecer de la siguiente manera.
<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>
Preguntas más frecuentes
P: Algunos de mis usuarios de Azure DevOps tienen GitHub identidades. ¿Es necesario agregarlos como nuevos usuarios de GitHub a mi organización?
R: No. Pida a los usuarios que cierren la sesión y vuelvan a iniciar sesión en la organización con sus credenciales de GitHub desde una sesión de explorador nueva. Esta acción establece sus identidades de GitHub.
P: Soy administrador de la organización y he habilitado la política para invitar a usuarios de GitHub. ¿Por qué no puedo invitar a nuevos usuarios de GitHub?
R: Después de cambiar la configuración, cierre la sesión de Azure DevOps y vuelva a iniciar sesión en la organización (dev.azure.com/{organizationName} o organizationName.visualstudio.com) con sus credenciales de GitHub desde una sesión de explorador nueva.
P: He iniciado sesión con mis credenciales de GitHub, pero ¿por qué no puedo invitar a GitHub usuarios?
R: Solo los administradores de la organización o el proyecto pueden invitar a nuevos usuarios a unirse a la organización. Es posible que no tenga los permisos necesarios para agregar nuevos usuarios. Consulte al administrador para obtener los permisos necesarios o pídale que agregue el usuario.
P: ¿Los usuarios de GitHub Enterprise obtienen acceso gratuito a Azure DevOps?
R: Para obtener más información, consulte Preguntas más frecuentes sobre administración de usuarios y permisos/GitHub Enterprise.
Pasos siguientes
Contenido relacionado
- Instalar y configurar la aplicación de Azure Boards para GitHub
- Configurar distintivos de estado para añadir a los archivos README de GitHub
- Solucionar problemas de integración de GitHub y Azure Boards
- Construir repositorios de GitHub
- Cambiar el acceso al repositorio de GitHub
Qué puede hacer con la integración de GitHub
Una vez conectado, puede hacer lo siguiente:
- Use GitHub Copilot: Use GitHub Copilot con elementos de trabajo para la generación de código automatizada
- Vincular elementos de trabajo: Vincula automáticamente confirmaciones, ramas y pull requests a elementos de trabajo
- Track development: Supervisión del progreso directamente desde Azure Boards