Há .git/objects
, que contém blobs, árvores, confirmações e tags. Fazer qualquer tipo de git push
envolve basicamente três etapas:
- Descobrir quais objetos o controle remoto precisa, mas ainda não possui;
- Empacotando (desduplicando) esses objetos para economizar espaço; e
- Transferindo os objetos.
git rev-parse --verify HEAD
e git bundle
podem ajudar você nas etapas 1 e 2.
Leia mais: Git Internals - Objetos Git · Pequeno pacote de alegria de Git