Skip to main content

¿Por qué integrar Devin con GitLab?

Integrar Devin con tus repositorios de GitLab permite que Devin cree merge requests (MR), lea y responda a tus comentarios en ellas y colabore de forma eficaz con tu equipo. De este modo, Devin puede ser un verdadero colaborador en tu equipo de ingeniería.
¿Usas una instancia autohospedada de GitLab? Ofrecemos compatibilidad con GitLab autogestionado (versión 15.0 y posteriores) para usuarios de nuestro plan Enterprise. Solo tienes que hacer clic en el menú desplegable del botón “Connect” y seleccionar Connect to self-hosted instance. Consulta la guía de integración de GitLab autogestionado para obtener las instrucciones completas de configuración.El mismo menú desplegable también ofrece Connect service account, que conecta una cuenta de servicio de GitLab.com (o una cuenta de usuario dedicada en el tier Free) con un token de acceso personal que tenga el ámbito api en lugar del OAuth flow que se describe a continuación.

Configuración de la integración

¡La configuración es sencilla! A continuación te explicamos cómo empezar:
  1. Crea una nueva cuenta de GitLab específicamente para Devin (igual que crearías una cuenta personal). Usarás esta cuenta, no tu cuenta personal, durante el proceso de integración.
  2. En tu cuenta de Devin, ve a Settings > Connections > GitLab y haz clic en “Connect”.
  3. Se te redirigirá a GitLab, donde deberás:
    • Iniciar sesión con la cuenta de GitLab que creaste para Devin (no tu cuenta personal)
    • Conceder los permisos necesarios para que Devin pueda trabajar con tus repositorios
  4. Cuando hayas terminado, regresarás a la página de configuración de Devin, donde podrás confirmar que la integración está activa.
Para instalaciones de GitLab on-premise (autohospedado), la sincronización del estado de los MR (open, merged, closed) con las sesiones de Devin solo se realiza una vez al día. Esto puede hacer que el estado de los MR en tu sesión o en la lista de sesiones se muestre temporalmente de forma incorrecta hasta que se produzca la siguiente sincronización.

Configuración del webhook

Configurar un webhook permite que Devin reciba automáticamente notificaciones en tiempo real cuando se producen eventos específicos en GitLab (como abrir o actualizar merge requests, o añadir comentarios en ellas). Para configurar el webhook:
  1. En tu cuenta de Devin, ve a Settings > Connections
  2. Localiza la instancia de GitLab que quieres configurar
  3. Haz clic en el menú desplegable Gestionar
  4. Selecciona Configurar webhook
  5. Sigue los comandos proporcionados para completar la configuración
Configurar webhook
Una vez configurado, Devin podrá responder a eventos de GitLab en tiempo real, en lugar de depender de sondeos periódicos.

Permisos del repositorio

Para usuarios de Core y Teams

Una vez configurada la integración, puedes @mencionar repositorios directamente en tus prompts dentro de la aplicación web de Devin.

Para usuarios de Enterprise

Una vez configurada la integración, puedes delegar repositorios a organizaciones específicas desde Settings de Enterprise > Permisos de repositorio.
  1. Ve a Repositorios de Enterprise
  2. Selecciona la organización correspondiente
  3. Abre Gestionar permisos
  4. Agrega los repositorios pertinentes con los permisos de lectura/escritura adecuados
Si los repositorios no aparecen inmediatamente después de conectarse, Devin actualiza periódicamente la lista de repositorios. También puedes actualizarla manualmente en Devin.

Vinculación de usuarios

Además de la conexión a nivel de organización, cada usuario puede vincular su propia cuenta de GitLab a Devin para que Devin pueda actuar con su identidad en las operaciones de GitLab, como abrir merge request en nombre del usuario vinculado cuando Open PRs as está configurado como User o User only en Settings > Devin > Pull requests. Para vincular una cuenta personal de GitLab:
  1. Asegúrate de ser miembro de una organización de Devin que tenga configurada la integración con GitLab
  2. Ve a Settings > Connections en la configuración de tu cuenta personal
  3. Busca la fila GitLab, haz clic en Link y completa la autorización de GitLab
Personal Connections solo muestra las integraciones de las organizaciones a las que pertenece el usuario. La fila GitLab aparece cuando tu organización tiene una conexión con GitLab.com. Las instancias autohospedadas de GitLab (plan Enterprise) aparecen como filas independientes de Self-hosted GitLab identificadas con el host, y se vinculan de la misma manera. Si no aparece ninguna fila de GitLab, comprueba que eres miembro de una organización de Devin con una conexión de GitLab.

Cómo usar Devin con la integración de GitLab

Después de conectar GitLab, configura tus repositorios en Devin’s Machine.
Cómo responde Devin a los comentarios de MR. Una vez configurado el webhook, los comentarios de una solicitud de fusión que una sesión de Devin esté siguiendo se entregan a esa sesión en tiempo real. De forma predeterminada, esto despierta una sesión que está durmiendo y Devin responde al comentario.Para limitar este comportamiento, un admin de la organización puede activar Require @Devin to respond en Settings > Devin > Pull requests. Con ese ajuste habilitado, Devin solo se despierta y responde a los comentarios que empiezan con @Devin (también se acepta el prefijo devinai).Los comentarios que contienen (aside) o !aside, o que empiezan con aside, siempre se ignoran, independientemente de este ajuste, de modo que puedes comentar la MR sin despertar a Devin.Sin un webhook, los comentarios de la MR no llegan a la sesión en tiempo real; aun así, Devin puede atenderlos si se los señalas directamente en la sesión.

Mejores prácticas

  • Crea una cuenta específica de GitLab para Devin
  • Activa la protección de ramas en las ramas main/master
  • Configura el webhook para recibir notificaciones de eventos en tiempo real

Soporte

  1. Crea un canal de Slack Connect con nuestro equipo en app.devin.ai/settings/support
  2. Comparte enlaces de la sesión al reportar problemas y adjunta capturas de pantalla