User Tools

Site Tools


subversion

This is an old revision of the document!


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
 svn co file://localhost$HOME/.svn_repos/my-cool-project/html html

To verify that you've checked out a working copy, run svn info. It should output something like:

Path: .
Working Copy Root Path: /sdf/arpa/ns/p/peteyboy/svn-projects/svn-import-project
URL: file://localhost/sdf/arpa/ns/p/peteyboy/.svn_repos/svn-test-project/svn-import-project
Relative URL: ^/svn-import-project
Repository Root: file://localhost/sdf/arpa/ns/p/peteyboy/.svn_repos/svn-test-project
Repository UUID: 544a3ecf-0234-e84b-9db9-4af62ac22ed4
Revision: 3
Node Kind: directory
Schedule: normal
Last Changed Author: peteyboy
Last Changed Rev: 3
Last Changed Date: 2021-03-17 20:01:51 +0000 (Wed, 17 Mar 2021)

5 Accessing It Remotely

TBD

subversion.1616013731.txt.gz · Last modified: 2021/03/17 20:42 by peteyboy