Software configuration management process - Codematrix Software configuration management process - Codematrix Software configuration management process - Codematrix Software configuration management process - Codematrix Software configuration management process - Codematrix Software configuration management process - Codematrix Software configuration management process - Codematrix  
 
Codematrix - Navigation
 
 
Codematrix software configuration management
Configuration management software
SCM product info
SCM software downloads
Software version control and change management software
Configuration management software support
Training for software configuration management
Code Matrix Personal, Codematrix Professional, CodeMatrix Enterprise
Codematrix contact details
 
Home > Documentation
 
Download - Administrators Guide User guides
 
Concepts and terminology


The CodeMatrix software is designed to be intuitive and easy to use. There are however a number of concepts the user must be aware of in order to make the best use of the software. This section outlines the key terms and concepts.

Branch

A branch is a virtual copy of a set of file revisions. Branches are useful when maintaining multiple versions of a set of files, such as multiple releases of a software product or several variations of a web site. A user creates a branch using the Branch Wizard.

Change reference

Each update to the CodeMatrix database increments an internal counter, known as the change reference number. CodeMatrix offers the facility to identify file revisions using this number, so it may be used to view snapshots of the database at any point in time. A common use for this facility is to recreate a set of source files used in a particular software build when subsequent changes have been made to these files.

CodeMatrix allows multiple updates to be grouped into a transaction, in which case a single change reference number will represent the system state at the end of the transaction.

Checkin / Checkout

Files on a user computer managed by CodeMatrix are said to be checked in or checked out. Checked in files have read only attributes so can not be changed, and are locked by the Active Workspace manager to prevent rename or changes to the read only attribute. Checked out files are writeable. To prepare a file for changes the user issues a checkout command to change the state to checked out. Checking out a file creates a new revision record in the database.

Filter

Filters allow a user to tailor the results returned by CodeMatrix queries and the actions of updates, by restricting the operation to revisions that match specified criteria, such as revision date or user. By using a filter a user can view the database state as it existed at a previous point in time, check out old file revisions, create branches based on non-current revisions back out changes, and a variety of other tasks which require access to historic data. CXInsight uses filters in it's 'view' feature.

Integration

Integration is the process of merging changes in a parent branch to a workspace to incorporate changes by other users or from other strands.

Label

A label is a tag that can be applied to a single revision of one or more files, so that the set of revisions may be identified. 

Mount

In order to do useful work on files, they must be made available on a user's computer. A user works on files in a workspace (see below). The process of copying a workspace to a user's computer is known as mounting the workspace. If a workspace is unmounted and mounted again the state of changed files is preserved. This feature allows a user to move work between computers if necessary.

Promotion

Promotion is the process of merging changes in a workspace or branch to a parent branch.

Revision

Each recorded change to a file is known as a revision. A new revision is created when a file is created, deleted, integrated, promoted or checked out. A revision can be identified by it's revision number or it's change reference number.

Repository

A repository is the major storage unit in CodeMatrix and relates to a physical storage location on the server. All files managed by CodeMatrix are stored in a repository. The repository name always appears as the first node in a fully qualified CodeMatrix file name. A special repository named Admin holds control information used to manage the CodeMatrix system. A repository has the same characteristics as a branch and can be used to maintain a development strand.

Transaction

Transactions allow a number of updates to be executed as a single atomic operation. An atomic operation ensures that if any of the updates fail the transaction is terminated and the preceding updates are rolled back to leave the affected data in the same state as previously existed. CodeMatrix transactions support all update operations, including those that affect the client computer such as mount and checkout. Two phase commit techniques ensure that the client and server computers are consistent even after critical errors. 

Uncheckout

A user can abandon changes to a checked out file by using the uncheckout operation which will restore the contents of the local file and the revision status to that which existed prior to the checkout. After an uncheckout operation a copy of the file is left on the server so an accidental uncheckout can be recovered.

Workspace

A workspace is a special CodeMatrix folder that contains a set of files and folders that a user can work with. Essentially a workspace is the same as a branch, the main difference being that the contained files can be mounted on a client machine. A user creates and mounts a workspace using the Workspace Wizard.

Workspaces are essentially a personal work area in the CodeMatrix database, so a user is free to check files in and out of a workspace without impacting other users. Once a set of changes is complete they are incorporated into the target by using the workspace promote option.