lolololol viejo
Esta pregunta puede parecer trivial de responder, pero estoy luchando por encontrar las ventajas definitivas de almacenar el contenido del archivo como blobs y no solo en su formato original (por ejemplo, un archivo de texto).
Por lo general, los blobs se usan en lugar de otros formatos de almacenamiento para medios: imágenes, videos, audio, etc. git
al menos como lo veo comúnmente usado, generalmente rastrea revisiones a archivos de texto y no multimedia.
Para resumir formalmente: ¿cuáles son las ventajas de almacenar el contenido del archivo como un blob (convierte a datos binarios) en lugar del formato original de la revisión (por ejemplo, dejarlo como texto)?
“Blob” solo significa una secuencia de bytes. Un blob en Git contendrá exactamente los mismos datos que un archivo, solo que un blob se almacena en la base de datos de objetos de Git y un archivo se almacena en el sistema de archivos.
Entonces no hay diferencia en el formato, la única diferencia es cómo se almacenan.
Por ejemplo, si agrega una imagen hello.jpg
a su repositorio, y luego confirme, tendrá dos copias de los mismos datos:
-
tendrás un expediente en disco, llamado
hello.jpg
que contiene los datos JPEG, -
tendrás un gota en su base de datos de objetos Git, nombrada con el hash de su contenido, que contiene el exactamente el mismo Datos JPEG en el mismo formato.
La base de datos puede usar algunos trucos sofisticados para almacenar datos de manera eficiente, incluida la compresión y el uso de deltas, pero al final aún almacena exactamente los mismos datos que estaban en el archivo original.
Un archivo de texto no es diferente. “Texto” es solo un tipo particular de datos que puede almacenar en un archivo binario.
Que quieres decir con formato original de la revisión? El contenido del archivo, siempre que sea un archivo de texto o no, es solo una secuencia de bytes. Esa secuencia de bytes se llama blob en Git.
– usuario4003407
24 de febrero de 2018 a las 4:43
Un blob almacena el contenido sin procesar original. Eso es lo que significa.
– Hobbs
24 de febrero de 2018 a las 4:43
En Días de antaño (y aún hoy), en el base de datos mundo, las entradas en las bases de datos a menudo tenían (tienen) tipos. Aquí, alguien inventó el término gota con el backrónimo Objeto grande binario, para significar “datos no interpretados”. Linus Torvalds robó el término para uso en Git, pero no exactamente con el mismo contexto. Tenga en cuenta que Git también almacena otras cosas como blobs, en particular, los objetivos de los enlaces simbólicos se almacenan como objetos blob.
– torek
24 de febrero de 2018 a las 5:39