Monorrepositórios e Submódulos do Git
Aprenda as vantagens e desvantagens entre configurações com monorrepositórios e vários repositórios, e como os submódulos do Git incorporam um repositório dentro de outro.
Monorrepositórios e Submódulos do Git é uma aula grátis de DevOps Bootcamp no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de DevOps Bootcamp, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de DevOps Bootcamp inclui 4 aulas no total.
Monorrepositório ou vários repositórios
Um monorrepositório armazena vários projetos em um único repositório. Uma configuração com vários repositórios mantém cada projeto em seu próprio repositório. Ambas são comuns em grande escala.
Por que as equipes escolhem monorrepositórios
Os monorrepositórios facilitam:
- Compartilhar código entre projetos
- Refatorar entre limites de forma atômica
- Usar uma única integração contínua e um único esquema de versionamento
Desafios dos monorrepositórios
Monorrepositórios grandes podem ficar enormes, tornando clones e integração contínua mais lentos. Ferramentas como checkout esparso e caches de compilação ajudam a gerenciar esse problema.
O que é um submódulo?
Um submódulo é um repositório Git separado incorporado a outro repositório em uma confirmação específica. O repositório externo rastreia qual confirmação do repositório interno deve ser usada.
Adicionando um submódulo
Incorpore um repositório externo em um caminho com git submodule add.
git submodule add https://github.com/org/shared-lib libs/sharedO arquivo .gitmodules
O Git registra o caminho e o endereço de cada submódulo em um arquivo .gitmodules rastreado na raiz do repositório.
[submodule 'libs/shared']
path = libs/shared
url = https://github.com/org/shared-libClonando com submódulos
Uma clonagem normal deixa as pastas dos submódulos vazias. Use a opção recursiva para obtê-los também.
git clone --recurse-submodules https://github.com/org/appInicializando submódulos existentes
Se você já fez a clonagem, baixe o conteúdo dos submódulos com init e update.
git submodule update --init --recursiveAtualizando um submódulo
Os submódulos permanecem fixados em uma confirmação. Para avançar para a versão mais recente, atualize-o internamente e confirme o novo ponteiro no repositório pai.
git submodule update --remote libs/shared
git add libs/shared
git commit -m 'Bump shared lib'Submódulos versus subárvore
subárvore do Git é uma alternativa que mescla diretamente o conteúdo de outro repositório, evitando a complexidade dos ponteiros fixados, mas perdendo a separação clara.
Escolhendo uma abordagem
Use um monorrepositório para projetos estreitamente acoplados, submódulos para incorporar uma biblioteca compartilhada com versionamento independente e vários repositórios quando as equipes forem totalmente autônomas.
Verificação rápida
Teste sua compreensão sobre monorrepositórios e submódulos.
Revisão
Você aprendeu sobre monorrepositórios e submódulos:
- Monorrepositórios centralizam vários projetos; vários repositórios os mantêm separados
- Submódulos incorporam um repositório fixado em uma confirmação por meio de
.gitmodules - Faça a clonagem com
--recurse-submodules - Subárvore é uma estratégia alternativa de incorporação
Perguntas Frequentes
A aula “Monorrepositórios e Submódulos do Git” é grátis?
Sim — o texto completo de “Monorrepositórios e Submódulos do Git” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de DevOps Bootcamp, atualize para CoddyKit PRO. O curso de DevOps Bootcamp inclui 4 aulas no total.
O que vou aprender em “Monorrepositórios e Submódulos do Git”?
Aprenda as vantagens e desvantagens entre configurações com monorrepositórios e vários repositórios, e como os submódulos do Git incorporam um repositório dentro de outro. Você pratica DevOps Bootcamp com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar DevOps Bootcamp?
Nenhuma experiência prévia é necessária. DevOps Bootcamp no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Monorrepositórios e Submódulos do Git”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de DevOps Bootcamp?
Sim. Cada aula de DevOps Bootcamp inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Git em IDEs e ferramentas de desenvolvimento
- Soluções Git empresariais
- Dimensionando o Git para equipes grandes
- Monorrepositórios e Submódulos do Git