Alternativas al "pago escaso" en Git

En mi trabajo, trabajo con Perforce, y realmente me gusta la forma en que puede tener tanto código como desee en su almacén y los desarrolladores solo necesitan especificar ciertos subdirectorys en un cliente y solo ese subset se descarga al área local.

Por lo que entiendo [1] [2] [3] , en Git, el checkout disperso searchá un subset de carpetas / files pero downloadá todo el repository, lo que en mi opinión derrota al object como la única razón por la que usaría esto es para ahorrar espacio en el disco Puede usar --depth para download solo tanto historial, pero esta no es una solución con la que estaría contento.

¿Qué alternativas hay para un gran proyecto de código cuando estás usando Git? Linus parece tener todo el código del kernel de Linux en un repository . ¿Qué haría si quisiera trabajar en un subset del código?

Como regla general, esto no es algo que deba hacerse a nivel de pago, sino que parece ser un problema de organización en su repository.

Git gira en torno a los usuarios que tienen todo el repository, por eso se lo conoce como un sistema de "control de versiones distribuidas" en lugar de un sistema centralizado.

Un git repo generalmente debe contener un único module de código independiente que sea lo más pequeño e independiente posible. Si tiene un proyecto por niveles, también podría considerar el uso de submodules para organizarlo en un set de repositorys que contienen y sub.

La mayoría de los services de hospedaje de git recomiendan o requieren un tamaño máximo de repo de less de 1 GB, a menudo mucho less, lo que significa que, en realidad, la cantidad de espacio en disco que consume es pequeña en cualquier computadora moderna.

Linux es una exception, ya que es uno de los principales proyectos más grandes alojados en un repository de git único y el performance de clonarlo y realizar otras operaciones pesadas puede llevar mucho time en hardware lento. Sin embargo, una vez más, esta es solo una opción de layout para el kernel de Linux y tiene una variedad de ventajas y desventajas.

tldr: No, no hay una buena manera de realizar un pago parcial sin clonar todo el repository, pero esto no debería ser un problema ya que sus repositorys deberían ser relativamente pequeños.