Se eu modificar um submódulo, posso enviar a confirmação de volta à origem do submódulo ou isso exigiria um clone? Se clone, posso armazenar um clone dentro de outro repositório?
git
git-submodules
webjay
fonte
fonte
git config push.recurseSubmodules on-demand
. Entãogit push
, basta um simples para empurrar tudo (repositório principal e submódulos). Veja minha resposta editada abaixo .Respostas:
Um submódulo nada mais é do que um clone de um repositório git dentro de outro repositório com alguns metadados extras (entrada em árvore gitlink, arquivo .gitmodules)
fonte
gh-pages
ramo para a documentação em um repo github :)Observe que desde o git1.7.11 ( [ ANUNCIAR ] Git 1.7.11.rc1 e nota de lançamento , junho de 2012) menciona:
Provavelmente feito após este patch e a
--on-demand
opção:Assim, você pode enviar tudo de uma só vez com (do repositório pai) a:
Esta opção funciona apenas para um nível de aninhamento. Alterações no submódulo dentro de outro submódulo não serão enviadas por push.
Com o git 2.7 (janeiro de 2016), um simples empurrão do git será suficiente para empurrar o repositório pai ... e todos os seus submódulos.
Consulte confirmar d34141c , confirmar f5c7cd9 (03 de dezembro de 2015), confirmar f5c7cd9 (03 de dezembro de 2015) e confirmar b33a15b (17 de novembro de 2015) por Mike Crowe (
mikecrowe
) .(Mesclado por Junio C Hamano -
gitster
- na confirmação 5d35d72 , 21 de dezembro de 2015)O
git config
documento agora inclui :Assim:
Git 2.12 (primeiro trimestre de 2017)
git push --dry-run --recurse-submodules=on-demand
vai realmente funcionar.Consulte commit 0301c82 , commit 1aa7365 (17 de novembro de 2016) por Brandon Williams (
mbrandonw
) .(Mesclado por Junio C Hamano -
gitster
- na confirmação 12cf113 , 16 de dezembro de 2016)E ainda no Git 2.12, você agora "
--recurse-submodules=only
" tem a opção de empurrar submódulos para fora sem empurrar o superprojeto de nível superior .Consulte commit 225e8bf , commit 6c656c3 , commit 14c01bd (19 de dezembro de 2016) por Brandon Williams (
mbrandonw
) .(Mesclado por Junio C Hamano -
gitster
- na confirmação 792e22e , 31 de janeiro de 2017)fonte