Skip to main content

Por que integrar o Devin ao GitLab?

Integrar o Devin aos seus repositórios do GitLab permite que ele crie merge requests, leia e responda aos comentários nos seus MRs e colabore de forma eficaz com sua equipe. Isso faz com que o Devin atue como um verdadeiro colaborador na sua equipe de engenharia.
Usando uma instância auto-hospedada do GitLab? Oferecemos suporte ao GitLab Self-Managed (versão 15.0 e posteriores) para usuários do nosso plano Enterprise. Basta clicar no menu suspenso do botão “Connect” e selecionar Connect to self-hosted instance. Consulte o guia de integração do GitLab Self-Managed para obter as instruções completas de configuração.O mesmo menu suspenso também oferece Connect service account, que conecta uma conta de serviço do GitLab.com (ou uma conta de usuário dedicada no nível Free) com um token de acesso pessoal que tenha o escopo api, em vez do OAuth flow descrito abaixo.

Configurando a integração

A configuração é simples! Veja como começar:
  1. Crie uma nova conta no GitLab especificamente para o Devin (assim como você criaria uma conta pessoal). Você usará essa conta, e não a sua conta pessoal, durante o processo de integração.
  2. Na sua conta Devin, acesse Settings > Connections > Gitlab e clique em “Connect”.
  3. Você será redirecionado para o GitLab, onde deve:
    • Fazer login com a conta no GitLab que você criou para o Devin (e não com a sua conta pessoal)
    • Conceder as permissões necessárias para o Devin trabalhar com seus repositórios
  4. Quando terminar, você voltará para a página de configurações do Devin, onde poderá confirmar que a integração está ativa.
Para instalações GitLab on-premises (auto-hospedado), a sincronização do status de MR (aberto, merged, fechado) com as sessões do Devin ocorre apenas uma vez por dia. Isso pode levar a uma representação temporariamente incorreta do status da MR na sua sessão ou na lista de sessões até que a próxima sincronização ocorra.

Configuração do Webhook

Configurar um webhook permite que o Devin receba automaticamente notificações em tempo real quando eventos específicos ocorrerem no GitLab (como a abertura ou atualização de merge requests e comentários em merge requests). Para configurar o webhook:
  1. Na sua conta do Devin, acesse Configurações > Conexões
  2. Localize a instância do GitLab que você deseja configurar
  3. Clique no menu suspenso Gerenciar
  4. Selecione Configurar Webhook
  5. Siga os comandos fornecidos para concluir a configuração
Configurar Webhook
Depois de configurado, o Devin poderá responder a eventos do GitLab em tempo real, em vez de depender de consultas periódicas.

Permissões de repositório

Para usuários do Core e do Teams

Assim que a integração estiver configurada, você pode usar @ para mencionar repositórios diretamente em seus prompts na aplicação web do Devin.

Para usuários do Enterprise

Assim que a integração estiver configurada, você pode delegar repositórios a organizações específicas em Configurações do Enterprise > Permissões de Repositório.
  1. Vá para Repositórios do Enterprise
  2. Selecione a organização correta
  3. Abra Gerenciar permissões
  4. Adicione os repositórios relevantes com as permissões adequadas de leitura/gravação
Se os repositórios não aparecerem imediatamente após a conexão, Devin atualiza a lista de repositórios periodicamente. Você também pode atualizar manualmente a lista de repositórios no Devin.

Vinculação de usuário

Além da conexão que vale para toda a organização, cada usuário pode vincular sua própria conta no GitLab ao Devin, para que o Devin atue com a identidade dele nas operações do GitLab — por exemplo, abrindo merge requests como o usuário vinculado quando Open PRs as estiver definido como User ou User only em Configurações > Devin > Pull requests. Para vincular uma conta pessoal no GitLab:
  1. Confirme que você é membro de uma organização do Devin que já tenha a integração com o GitLab configurada
  2. Acesse Configurações > Conexões nas configurações da sua conta pessoal
  3. Localize a linha GitLab, clique em Link e conclua a autorização no GitLab
Personal Connections mostra apenas as integrações das organizações às quais o usuário pertence. A linha GitLab aparece quando sua organização tem uma conexão com o GitLab.com. Instâncias auto-hospedadas do GitLab (plano Enterprise) aparecem em linhas separadas de GitLab auto-hospedado, identificadas pelo host, e são vinculadas da mesma forma. Se nenhuma linha do GitLab aparecer, verifique se você é membro de uma organização do Devin com uma conexão com o GitLab.

Como usar o Devin com a integração do GitLab

Após conectar o GitLab, configure seus repositórios em Devin’s Machine.
Como o Devin responde a comentários em MRs. Depois que o webhook estiver configurado, um comentário em um merge request acompanhado por uma sessão do Devin é entregue a essa sessão em tempo real. Por padrão, isso desperta uma sessão em suspensão e o Devin responde ao comentário.Para limitar esse comportamento, um administrador da organização pode ativar Require @Devin to respond em Configurações > Devin > Pull requests. Com essa configuração ativada, o Devin só desperta e responde a comentários que começam com @Devin (o prefixo devinai também é aceito).Comentários que contêm (aside) ou !aside, ou que começam com aside, são sempre ignorados, independentemente dessa configuração, para que você possa discutir a MR sem despertar o Devin.Sem um webhook, os comentários da MR não chegam à sessão em tempo real; mesmo assim, o Devin pode tratá-los se você os mencionar diretamente na sessão.

Práticas recomendadas

  • Crie uma conta dedicada para o Devin no GitLab
  • Ative proteções de branch nos branches main/master
  • Configure o webhook para notificações de eventos em tempo real

Suporte

  1. Crie um canal do Slack Connect com nossa equipe em app.devin.ai/settings/support
  2. Compartilhe links das sessões ao reportar problemas e inclua capturas de tela