A directory name on the local machine. example: backupDir.

Local machine

Physical machine that runs the web browser and client side executables. Also, the development platform of a contributor.


A package is an archive of a project as a single file. Usually, a distribution package is made out of a stable version of a project but need not be. There exist binary packages of pre-compiled applications in format such as .rpm, .deb, etc. and source packages of a project source files.


A directory name on a local or remote machine. If the path references a directory on a remote machine, it will be qualified with either, or both, a user name and a machine name. example: replicatePath.


A project is a piece of software treated as a single logical unit either because of its functionality, its maintainer, ... In any case, by definition, a single source repository controls a project and commits can only be guaranteed atomic on a per project basis.

Remote machine

Physical machine that host the remote site and the server side executables.

Remote site

Information accessible through a web browser present on remote machine.

The remote site (site for short) is composed of read-only and editable elements. Read-only elements comprise mail archives [mbox], billing information, etc. A mail archive is read-only and each e-mail in it stored in full and in time order. Thus mail archives, though part of the site, do not participate into repository activities such as branching, change lists, online edition, etc.


Information stored under a revision control system.

A repository is made of all editable elements of a site. Each editable element is revisioned. Some elements can even be branched. For example

  • Vector Graphics (SVG)
  • text snipset (formatted text)
  • source code (C++)
  • Unit test results
  • Simple "active" queries

are candidates for branches while:

  • Calendar tables, account information

are also part of the site. They are editable and thus require to be part of a change list. It does not seem pertinent to keep the revision history nor branch those information so their relevance as part of the repository is questionable.


The root directory of a file hierarchy. examples: srcTop, buildTop.


Directory structure in which each file is a complete editable element of the repository at a specific revision.