Another common version control concept is a tag. A tag is just a “snapshot” of a project in time. In Subversion, this idea already seems to be everywhere. Each repository revision is exactly that—a snapshot of the filesystem after each commit.
However, people often want to give more human-friendly names to
tags, such as
release-1.0. And they
want to make snapshots of smaller subdirectories of the filesystem.
After all, it’s not so easy to remember that release 1.0 of a piece of
software is a particular subdirectory of revision 4822.