Um momento
Aula 09
Cursos / Módulos de Golang: Gerenciamento de Pacotes e Dependências na Linguagem Go
Como Manter uma Cópia de suas Dependências de Golang no seu Repositório (Vendoring)

Summary

# Aula de Golang: Vendoring

## O que é Vendoring?
Vendoring é o processo de manter uma cópia das dependências do seu projeto dentro do repositório. Isso é útil para garantir que as versões exatas das dependências estão disponíveis, especialmente em equipes ou organizações que preferem ter controle total sobre o que está incluído no código.

### Exemplo Prático
- Imagine que você tenha um módulo chamado **Currency** que depende de outras bibliotecas, como Mux.
- Para realizar o vendoring, você cria uma pasta chamada **Vendor** na raiz do seu projeto.

## Como Fazer?
1. Acesse o terminal na pasta raiz do seu projeto.
2. Execute o comando:

go mod vendor

3. Isso criará a pasta **Vendor** com cópias de todas as dependências do seu projeto.

### Resultados Esperados
- Uma pasta **Vendor** será criada contendo cópias de cada dependência.
- Um arquivo **mod.txt** também será gerado, contendo informações sobre as dependências.

### Vantagens e Desvantagens
- **Vantagens:** Você tem controle sobre as versões das dependências que seu projeto utiliza.
- **Desvantagens:** A inclusão das dependências pode ocupar espaço no repositório.

### Removendo o Vendoring
Se você deseja remover o vendoring, basta deletar a pasta **Vendor**.

É isso! Vendoring é simples e ajuda a gerenciar dependências de forma eficiente. Até a próxima aula!

Video Transcript

Olá pessoal, estamos de volta com mais uma aula de Golang. Nesta aula vou falar de Vendoring. O que é Vendoring? Vendoring é quando você tem as dependências do projeto e você mantém uma cópia dessas dependências no seu repositório. Por exemplo, eu tenho aqui um certo módulo que eu criei e ele depende de duas dependências. Nesse módulo chamado Currency, em linha 7, no Mux. Então, Vendoring é quando a gente pega e tem uma cópia de cada dependência e você faz um comete dessa cópia no seu próprio repositório para ter cópia lá. Cetas companheias e organizações gostam de ter isso, essa funcionalidade. Então, vou te ensinar como fazer, bem simples. Você vai lá no terminal, na pasta-raís do seu projeto e você digita GolModVendor. GolModVendorVNDoA O que acontece é que eu criei uma pasta chamada Vendor na raiz do projeto e dentro da pasta tem uma cópia de cada dependência, de cada módulo do seu projeto. Nesse caso, getfail.com.br, BNK, Malest e Gorilastam aqui. Você pode ver que a gente tem uma cópia de cada dependência no seu repositório e você pode incluir com a pasta-vendor, como parte do seu repositório, e fazer o comete dela. A vantagem é que você sempre vai saber exatamente o que vai ser incluído no projeto. A desvantagem é ter que incluir isso e vai ocupar espaço no repositório. Tá certo pessoal? Se você quiser remover Vendor, é só deletar a pasta. Então é só isso, bem simples. GolModVendor e uma cópia de cada dependência será criada dentro da pasta Vendor. Ele criou esse arquivo mod.txt também, com as coisas aqui sobre as dependências. Por essa aula é só e até a próxima.
Nenhum comentário ainda (loading...)
Nenhum comentário ainda (loading...)
Gostou da aula? 😆👍
Apoie nosso trabalho com uma doação: