Go Modules
  • Boas-vindas
  • Básico
    • O que é um módulo?
    • Rotina usando módulos
      • Criando um novo módulo
      • Adicionando uma dependência
      • Atualizando dependências
      • Adicionando uma dependência em uma nova versão principal (major)
    • Comandos comuns
  • Novos conceitos
    • Módulos
    • go.mod
    • Seleção de versão
  • Avançado
    • Go Module Proxy
    • go.sum
    • Checksum Database
  • Tutoriais
    • Como usar libs privadas?
    • Como usar libs privadas no Github Actions?
  • FAQ
    • Devo fazer commit do arquivo 'go.sum'?
    • Quando usar replace?
    • Posso trabalhar totalmente sem um versionador de código em meu sistema de arquivos local?
    • Como faço para usar a "vendor" com módulos?
    • Que ferramentas posso usar para trabalhar com módulos?
    • Devo adicionar um arquivo 'go.mod' mesmo que eu não tenha nenhuma dependência?
  • Releases
    • 1.13
    • 1.14
    • 1.15
Powered by GitBook
On this page
  1. Novos conceitos

Módulos

PreviousComandos comunsNextgo.mod

Last updated 4 years ago

Um módulo é uma coleção de pacotes go relacionados que estão versionados juntos, em unidade.

Módulos registram com precisão os requisitos das dependências e criam builds reproduzíveis.

Na maioria das vezes, um repositório com controle de versão contém exatamente um módulo definido na raiz.

Em suma, a relação entre repositórios, módulos e pacotes se dá da seguinte forma:

  • Um repositório contém um ou mais módulos Go.

  • Cada módulo contém um ou mais pacotes Go.

  • Cada pacote go consiste em um ou mais arquivos fonte Go em um diretório.

Módulos precisam ser versionados semanticamente de acordo com semver, geralmente na forma v(major).(minor).(patch), como v0.1.0, v1.2.3, or v1.5.0-rc.1. O "v" inicial é obrigatório. Se estiver utilizando git, adicione tags de versão aos seus commits. É possível utilizar repositórios privados, ver .

Como usar libs privadas?