Domanda

Mi piacerebbe capire come la sovversione negozi revisioni in FSFS, e come una visione / shapshot è costruito per un dato numero di revisione.

Quello che ho raccolte da Googling è che FSFS è una struttura di directory semplice, con sottodirectory per ogni revisione, come:

..svn/rev/0/
..svn/rev/1/
..svn/rev/2/

Probabilmente solo le modifiche (delta) vengono registrate sotto ogni directory di revisione. Quindi, questo significa che quando si costruisce la vista / snapshot per revisione N, tutti i delta da 0 a N devono essere in loop oltre?

Tutti i link a risorse su questo molto apprezzato.

Grazie

È stato utile?

Soluzione

Subversion memorizza tutti i delta di ogni revisione in un unico (flat) revisione del file. Ogni file / cartella all'interno del repository (chiamato "nodo") ha un ID interno.

Un singolo file di revisione è composto da tutti i delta compressi per questo particolare commettere, però i delta non sono contro la revisione precedente, ma utilizzare un programma chiamato "delta saltato" evitando lineare crescente tempo di ricerca per la coltivazione cronologia delle versioni.

Importante è che FSFS usi avanti delta al posto del delta arretrate che utilizzano il BDB-backend. Così FSFS è più veloce sul commit, ma più lento al check-out, caratteristica di prestazione di Berkeley DB è contrario.

E 'possibile leggere molto di più all'interno SVN nota Design Chi FSFS .

Altri suggerimenti

Questo è il link al riferimento di struttura di FSFS (compresa la descrizione formato di file): https://svn.apache.org/repos/asf/subversion/trunk/subversion/libsvn_fs_fs/structure

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top