This is an old revision of the document!
Table of Contents
Subversion
*THIS TUTORIAL IS UNDER CONSTRUCTION*
This tutorial is not about using a version control system, or about using Subversion, but about how to get started with Subversion on SDF
There are graphical tools such as TortoiseSVN, but we will start with Subversion's command-line tool (this is SDF we're talking about, right?) which is svn
, and is installed on the cluster
Creating A Repository
To create your own svn repository (place to store projects under source control) run the commands to setup a repository named “my-cool-project” in your homedir under $HOME/.svn_repos
.
$ mkdir .svn_repos $ svnadmin create .svn_repos/my-cool-project
You can then checkout your new repository into a working directory.
Make a directory for the working copies of your projects, say:
mkdir ~/coding-projects
In this local setup where we are using file://
URLS, Subversion requires that you use an absolute path to the repository. To learn the full path to your home directory type:
cd; pwd
In the rest of this document you will need to replace '/path/to/homedir/' by the output of the previous command, or alternately, the $HOME
parameter
Then we can (locally) check out our project like so:
svn co file://localhost$HOME/.svn_repos/my-cool-project
Importing A Directory
If you want to add an existing folder to your repository:
Let's import our website into our repository! Note that after the import is finished, the original local directory does not become a working copy. To begin working on that data in a versioned fashion, you still need to create a fresh working copy of that tree.
cd html svn import -m "initial import" file://localhost$HOME/.svn_repos/my-cool-project/html
In this command
- 'import' is our cvs command
- '-m “initial import” is a message that will appear in the log.
- 'file:localhost$HOME/.svn_repos/my-cool-project/html' is the file pointer to our repo, with the last bit being the new directory where we want our 'html' stuff to go You can modify the message, the module name and the tags to your liking, just keep in mind that in the rest of this tutorial we will use 'html' for the module name. ===== 4 Checking It Out ===== cd mkdir tmp cd tmp cvs -d /path/to/homedir/cvs co html This should be enough to convince ourselves that the directory is now under version control. ===== 5 Accessing It Remotely ===== We can access our repository from the outside using ssh, to do this we need to set the environment variable CVS_RSH so that cvs will use ssh, using for instance: