quinta-feira, 15 de dezembro de 2016

O recurso 'submodules' do git permite fracionar o projetos principal em pequenos projetos singulares ou individuais.

Trabalhando com submódulos

suponha-se que temos uma calculadora onde as operações são outros projetos pre-exitentes (somar, subtrair, multiplicar e dividir).

Configurar submódulos

git init calculadora
cd calculadora
git submodule add https://gitlab.com/development-incolume/somar.git src/somar
git submodule add https://gitlab.com/development-incolume/subtrair.git src/subtrair
git submodule add https://gitlab.com/development-incolume/multiplicar.git src/multiplicar
git submodule add https://gitlab.com/development-incolume/dividir.git src/dividir
Estes comandos acima irão criar o arquivo '.gitmodules'
cat .gitmodules 
[submodule "src/somar"]
 path = src/somar
 url = https://gitlab.com/development-incolume/somar.git
[submodule "src/subtrair"]
 path = src/subtrair
 url = https://gitlab.com/development-incolume/subtrair.git
[submodule "src/multiplicar"]
 path = src/multiplicar
 url = https://gitlab.com/development-incolume/multiplicar.git
[submodule "src/dividir"]
 path = src/dividir
 url = https://gitlab.com/development-incolume/dividir.git

Adicione o .gitmodule ao projeto

git ci -m 'gitmodules adicionado'

Adicione o repositório remoto de teu projeto

git remote add origin https://gitlab.com/development-incolume/calculadora.git

Envie o teu projeto ao repositório remoto

git push -u --tags origin master

Comando principais para submódulos

Iniciar submodulos

git submodule init

Lista de submodulos

git submodule status

sincronizar submodulos

git submodule sync

atualizar submodulos

git submodule update

Ativar submódulos de um projeto

Estes comandos irão Iniciar, sincronizar e carregar os submodulos configurados no .gitmodules do projeto

git remote add origin https://gitlab.com/development-incolume/calculadora.git
git submodule init
git submodule sync
git submodule update

REferências

https://git-scm.com/docs/git-submodule
https://git-scm.com/book/pt-br/v1/Ferramentas-do-Git-Subm%C3%B3dulos

0 comentários: