Módulos

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?.

Last updated