clon superficial recursivo en git para su deployment

El verdadero problema que quiero resolver es la implementación de los complementos vim a través de ansible. El problema es que algunos complementos tienen una gran cantidad de submodules y lleva mucho time downloadlos y luego usan el espacio sin una buena razón en un disco duro.

El usuario del complemento solo necesita una versión y todos sus submodules, no todo el tree de la historia, ¿verdad? Entonces, ¿por qué no download y almacenar solo eso?

Entonces, ¿qué tenemos que hacer eso? Sé que hay un git clone --depth 1 --single-branch . Esto funciona para el complemento, está bien, pero no para los submodules. De acuerdo, ¿qué sabemos sobre los submodules? Tenemos el submodule git init –recursive –depth 1, pero eso no funciona para los submodules que no rastrean el complemento.

De acuerdo, entonces he leído esto y esto

Y el segundo dice que puedo search solo compromiso específico. Entonces, ¿puedo saber de alguna manera qué cometidos para cada submodule es el plugin want y luego usar si download submodules? No me importa hacerlo manualmente de alguna manera sin usar el command del submodule.

La siguiente pregunta es sobre la actualización de complementos. Cuando actualizamos a través de git pull, tendríamos más de una confirmación en nuestra copy local del complemento (y probablemente en los submodules). Lo cual es innecesario. Así que pensé en lugar de hacer git pull simplemente eliminar el plugin y downloadlo de nuevo, ¿pero tal vez hay una mejor manera? En otras palabras, ¿hay alguna manera de almacenar solo una confirmación en el complemento siempre?

PD: Por supuesto, puedo esperar un poco más y, en realidad, no es un gran problema que los complementos ocupen más espacio en el disco duro para mí. Es principalmente curiosidad y lucha por la perfección para mí.