Las buenas personas que crearon el sistema de control de versiones SVN utilizan una estructura a la que se refieren como "omitir deltas" para almacenar internamente el historial de revisión de los archivos. Una revisión se almacena como un delta contra una revisión anterior. Sin embargo, la revisión N no se almacena necesariamente como un delta contra la revisión N-1, como esta:
0 <- 1 <- 2 <- 3 <- 4 <- 5 <- 6 <- 7 <- 8 <- 9
En cambio, la revisión N se almacena como un delta contra Nf (N), donde f (N) es la mayor potencia de dos que divide N:
0 <- 1 2 <- 3 4 <- 5 6 <- 7
0 <------ 2 4 <------ 6
0 <---------------- 4
0 <------------------------------------ 8 <- 9
(Superficialmente parece una lista de omisión, pero en realidad no es tan similar; por ejemplo, los deltas de omisión no están interesados en admitir la inserción en el medio de la lista). Puede leer más sobre esto aquí .
Mi pregunta es: ¿otros sistemas usan deltas de salto? ¿Se conocieron / utilizaron / publicaron deltas de omisión antes de SVN, o los creadores de SVN lo inventaron ellos mismos?
fuente
Respuestas:
A partir de su enlace Skip-Deltas en Subversion , leí esta nota Notas sobre el mantenimiento de los historiales de versiones de los archivos y allí está escrito:
Así que supongo que el equipo SVN inventó el salto delta en algún lugar antes de 2002. Uno podría contactar a este Greg Hudson en caso de que sepa más.
¿O tal vez usaron un sistema de versiones (CVS) para desarrollar SVN y todavía hay registros de confirmación?
También busqué la compresión delta y no encontré ninguna referencia anterior. Creo que tendría sentido, porque esta técnica de omisión delta está especializada en la recuperación rápida y tal vez antes de SVN nadie necesitaba la recuperación rápida de datos comprimidos delta. La compresión Delta en sí está en la literatura desde los años 70/80. Uno de los primeros trabajos es Experiencias con compresión delta de datos producidos por DIII .
fuente