Topic: revision delta

topics > computer science > programming > Group: software maintenance

data compression algorithms
software change management
software maintenance by patching
temporal database
text compression
updating information in a distributed system
version control


A revision delta stores the difference between two revisions of the same document. For example, if a line is changed, the changed line may be stored instead of storing two copies of the document.

Either the final revision (e.g., RCS) or the first revision (e.g., SCCS) is stored.

Shortest edit sequence is the standard algorithm for computing deltas.

Binary data and XML need further care. (cbb 2/07)

Subtopic: XML delta up

Quote: a consolidated delta contains all changes to an XML document at the element level; each element has a unique ID [»rusuLI11_2005]
Quote: reference-based version model (rbvm) for xml stores pointers to maximum unchanged elements in the previous version; XML rooted in a version node [»chieSY9_2001]

Subtopic: computing delta up

Quote: algorithms for the shortest edit sequence for converting between two strings [»tichWF11_1984]
Quote: file differences as a minimal list of line changes; longest common subsequence; linear complexity in practice [»huntJW7_1976]
Quote: compress multiple versions of programs and data with deltas, i.e., an edit sequence from one to the other [»tichWF11_1984]
Quote: vdelta combines compressing and differencing via Tichy's block-move plus hashing; better than diff [»huntJJ4_1998]
Quote: use incremental hash function for efficient deltas of binary files; faster than SCCS [»reicC6_1991]
Quote: RBVM's references to previous versions identify matching segments for computing differences [»chieSY9_2001]

Subtopic: reversed deltas up

Quote: add a new RCS version by replacing latest version with new version and diff to latest [»tichWF9_1982]
Quote: RCS is a version control system based on reversed deltas; insertion and deletion of lines from current version [»tichWF7_1985]
Quote: RCS uses separate, reverse deltas; as easy as forward deltas and current version is extracted quickly [»tichWF9_1982]
Quote: RCS uses line-oriented deltas since Unix diff reports deltas this way [»tichWF9_1982]
Quote: separate RCS deltas by appending an edit script to the current revision [»tichWF9_1982]
Quote: currently RCS is slower for older revisions; trying to speed up by merging edit scripts [»tichWF9_1982]

Subtopic: binary delta up

Quote: use delta images for updating embedded software; in-place update [»vonpC6_2006]

Subtopic: forward deltas up

Quote: RCS uses forward deltas to recover side revisions, e.g., fixing bugs in current release while producing next one [»tichWF9_1982]
Quote: DSEE uses interleaved deltas like SCCS; allows single pass recovery of any version (an 'extended stream'); difficult in RCS [»leblDB5_1984]

Subtopic: local vs. global alignment up

Quote: local alignment by name is easier to understand, while global alignment works better for ordered data

Related Topics up

Topic: archives (19 items)
Topic: change (28 items)
Topic: data compression algorithms (53 items)
Topic: software change management (48 items)
Topic: software maintenance by patching (27 items)
Topic: temporal database (25 items)
Topic: text compression (17 items)
Topic: updating information in a distributed system (50 items)
Topic: version control
(34 items)

Updated barberCB 4/05
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.