Hace 7 años | Por mr_b a blogs.msdn.microsoft.com
Publicado hace 7 años por mr_b a blogs.msdn.microsoft.com

Aquí en Microsoft tenemos equipos de todos los tipos y formas, y muchos de ellos usan Git o están en camino de usarlo. En la mayor parte de los proyectos Git funciona bien, pero existen proyectos de tamaño inusual —la base de código de Windows, por ejemplo, tiene 35 millones de líneas y ocupa 270 GB— con lo que Git no escala lo suficientemente bien. Es por esto que hemos estado trabajando en una solución que escale a repositorios de cualquier tamaño y que presentamos hoy: GVFS, Git Virtual File System.

Comentarios

mr_b

El cliente de GVFS de Microsoft está bajo licencia libre; MIT en este caso. El código fuente está en GitHub: https://github.com/Microsoft/gvfs

D

Los de Microsoft siempre tan acertados:
https://es.wikipedia.org/wiki/GVFS

mr_b

#3 Pues sí, con lo fácil que habría sido llamarle GitFS

tunic

#12 Ya me he enterado, el EULA no es para GVFS, es para GvFlt. Al final de README de GitHub pone:
GVFS relies on the GvFlt filter driver, available as a prerelease NuGet package with its own license.

Vamos, que GVFS se apoya en otro software que no parece libre .

tunic

#8 Estoy contigo, yo por esas cosas prefiero GPLv3. Respecto al EULA, si impone esas restricciones no es libre. O quizá solo se aplican si usas su versión exacta del software. La verdad es que aquí me pillan, ¿algún experto en la sala?

mr_b

#9 Al tener doble licencia entiendo que no es porque se aplique a una versión exacta del software, sino a unas condiciones de utilización. Es decir, si lo usas para proyectos libres (por ejemplo), lo puedes usar. Si lo usas para ganar dinero, pues no. Qt tiene doble licencia de forma similar. Para proyectos libres es gratis; si lo usas para ganar dinero pues les tienes que pagar. Y me parece bien, que una cosa no quita la otra.

tunic

Y yo que pensaba que lo mismo era interesante...

GVFS requires Windows 10 Anniversary Update or later

¡Caballo de Troya a la vista!

mr_b

#2 Es software libre. Lo puedes clonar, revisar, editar y hacer lo que quieras con él. Y el protocolo también es libre: https://github.com/Microsoft/gvfs/blob/master/Protocol.md

tunic

#4 Puedo hacer todo eso en Windows, sí. Dan una implementación libre de referencia en Windows, aunque habría que ver cuanto de acoplada está a Windows (sospecho que mucho, porque debe de ir incrustado en la capa del sistema de ficheros si es totalmente transparente al IDE).

Por otro lado el protocolo es libre aunque bastante simple, no deja ser una exportación a webservices de los objetos git. No han publicado la parte del servidor, aunque como digo parece que debe tener mucha complejidad.

En fin, para ser justos la idea es buena, poder hacer checkout solo de lo que vas a usar está bien para proyectos monstruosos, eso es un hecho. Y está bien que sigan con su política de sacar cosas como software libre.

Una última cosa, esto no lo entiendo: Hay un EULA dentro del repositorio con cosas como:
You may not use the software in a live operating environment unless Microsoft permits you to do so under another agreement.

...
d) use the software for commercial, non-profit, or revenue-generating activities;
...
f) share, publish, distribute, or lend the software, provide the software as a stand-alone hosted solution for others to use, or transfer the software or this agreement to any third party.

https://github.com/Microsoft/GVFS/blob/master/GvFlt_EULA.docx

¿No choca esto con la propia licencia MIT usada?

tunic

#6 Obviamente donde digo "aunque como digo parece que debe tener mucha complejidad." es "aunque como digo parece que NO debe tener mucha complejidad.". Ains...

mr_b

#6 Sin haberlo visto, creo que tienes parte de razón en cuanto a que está muy incrustado, pero no porque vaya junto a la capa del sistema de ficheros, sino porque es un controlador de sistema de archivos nuevo usando el API VFS de Windows. Vamos, sería lo lógico; yo lo haría así.

Respecto a la licencia, a MIT es muy muy permisiva. Demasiado, de hecho. Es libre y lo que modifiques hay que compartirlo con la misma licencia pero nada te impide poner doble licencia (que, por lo que dices es lo que han hecho; se aseguran el buen nombre de lanzar software libre pero, por otro lado, lo limitan enormemente para evitar la competencia). Por eso a mí me gusta más la GPLv3, que tiene muchas más restricciones en cuanto a poder cerrar el software y demás.

D

"Base de código" es una traducción de "codebase" que nunca me ha terminado de gustar.

listuam

Git (pronunciado "guit"[2] ) es un software de control de versiones diseñado por Linus Torvalds.
https://es.m.wikipedia.org/wiki/Git
Creo que hablan de git no de github.com , que aunque es basado es git no es lo mismo.