|
|
ParadigmMost version control systems such as CVS are file-centered. Every file is versioned separately. There are only loose relations between files, for example if they are given the same tag. However, tags are a fairly dull structure; CVS does not even maintain a global list of all tags in a project.
In contrast, Superversion is based on changes and change sets. A change can be:
- Creation, deletion or modification of an individual file
- Modification of the list of files to ignore
A list of changes is called a change set. Every versioning step takes a project state and transforms it into another state by applying a change set.
The dependencies between states can be visualized nicely as a graph. In fact, that is the primary way the Superversion GUI displays project history.
|