Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

This is intended to serve as a basic introduction to the Subversion source code repository tool.  Basic terminology will be provided along with examples of commands.

Terminology

version control - the management of changes to code or other files using a central tool or service (Subversion being one example)

SVN Basics

This page includes explanations of terms and commands for Subversion or SVN.

...

URL - a resource locator used for some SVN commands; in the case of Subversion these will look like 'svn://repo/path/to/something'

relative path - a general file system term but for this tutorial it means the relative path to a file or directory in the working copy , (as opposed to a full URL
version control - the management of changes to code or other documents from a central tool or service (Subversion is one example)

remote repository - the remote copy of the code etc. maintained by on the Subversion server; also abbreviated as "repo"

repository root - the base URL of the repository such as svn://svn.freehep.org/hps/

...

working copy - your copy of an SVN module from the repository, including any local changes you have made

revision - a globally unique number to in the repository tagging the entire state of the repository after a commit (including add, delete, etc.)

commit - push your changes to the repository, making a new global revision

...

trunk - the remote repository's current revision, similar to "HEAD" in CVS terminology, main revision of a project

tag - a copy of the trunk from some a certain point in time, which should not be modified once created; usually kept in a structure node called 'tags'

branch - a fork copy of the trunk ( trunk or some other version structure node which represents a development fork of the code) which is for development and can be modified after it is created; usually kept in a node called 'called branches under the project's directory in the repository

merge - combining together two copies of (usually) the same node in order to merge their changes

revert - clobber your undo local, uncommitted changes in the working copy and replace with them with the current copy in from the remote repository

...

repo

Ignoring Files

Typically in most coding projects, there are local files which will be created by an IDE or other tool which should always be ignored by SVN.

...