¿Git análogo a la extensión Bigfiles de Hg?

Quiero algo en git que sea similar a la extensión Bigfiles de Mercurial (nota: sé de git-bigfiles , pero eso no está relacionado).

Básicamente, quiero almacenar binarys grandes en mi repository de git, pero no quiero get todas las versiones del binary grande cuando hago un clon. Solo quiero download los files binarys grandes cuando pago una revisión específica que contenga esos files grandes.

Aquí hay algunas opciones a considerar:

Clones superficiales : puede agregar el --depth <depth> a git clone para get un clon superficial del repository. por ejemplo, si <depth> es 1, esto significa que el clon solo obtendrá los files necesarios para la confirmación más reciente. Sin embargo, dichos repositorys tienen restricciones incómodas sobre lo que puede hacer con ellos, como se describe en la página man de git clone :

         --profundidad 
            Crear un clon superficial con un historial truncado al especificado
            número de revisiones.  Un repository poco profundo tiene una cantidad de
            limitaciones (no se puede clonar ni extraer de él, ni sacar de
            en él), pero es adecuado si solo está interesado en el reciente
            historia de un gran proyecto con una larga historia, y quisiera
            enviar arreglos como parches.

De hecho, como se discute en este hilo, es una exageración: existen situaciones útiles en las que seguir trabajando desde un clon superficial funcionará, y es posible que se ajusten a su flujo de trabajo.

La extensión "git media" de Scott Chacon : el autor describe esto en respuesta a esta pregunta similar y en el file README en github: http://github.com/schacon/git-media .

Submodules poco profundos : puede save todos sus files grandes en un repository git separado y agregarlos como un submodule poco profundo a su repository principal. Esto tendría la ventaja de que no tienes las restricciones de los clones superficiales para tu código, solo el repository con los files grandes.

También hay varias maneras de hacerlo agregando enlaces que (por ejemplo) rsync sobre sus files grandes desde git hooks, pero supongo que hay buenas razones por las que quiere mantener estos files bajo control de git en primer lugar. .

Espero que sea de alguna ayuda.