Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I am using a computational server (Scientific Linux) that I don't have root privileges on. I want to keep track of changes I make to my code and any forking I do.

Subversion looks like a natural fit for this but I don't think I can set it up without root privileges. Does anyone know any simple revision control scripts I can use?

Edit:

Judging by the answer, I conclude that I wasn't clear about something. I don't want to upload my code to any other server. I simply want to copy it locally to a dedicated folder (or something similar). We do an hourly backup of the data on that machine.

share|improve this question
    
None of the answers say that uploading to any other server is required. All four suggestions use fully self-contained repositories, everything in a single directory. –  grawity Dec 5 '11 at 14:32

3 Answers 3

up vote 3 down vote accepted

Also Subversion can easily be used locally without root privileges. First create a local repository with

svnadmin create <repo_dir>

and then do a checkout with

svn checkout file:///<path_to_repo_dir> <checkout_dir>

Works like a charm without requireing any special privileges. You could even access the repository over svn+ssh if you have SSH access to that machine via

svn checkout svn+ssh://user@host/<path_to_repo_dir> <checkout_dir>
share|improve this answer

Most popular distributed version control systems can work without root privileges. The repository is entirely self-contained.

For example, the only command needed to convert the current directory into a Git or Hg (aka Mercurial) repository is git init and hg init respectively. All data stays within the same directory, although it's very easy to push to another server over SSH.


If the program is not installed yet, doing it yourself is possible – just download the source code, compile, and install somewhere in your home directory (for example, ~/usr or ~/.local). This works very well with Git; I have not tested yet with Hg.

Prepare (adjust $HOME/usr if wanted):

local="$HOME/usr"
export PATH="$local/bin:$PATH"

Install Git:

mkdir -p "$local"
wget https://git-core.googlecode.com/files/git-1.7.8.tar.gz -O - | tar xz
cd git-1.7.8
./configure --prefix "$local" && make && make install

To use, set PATH again as in the "Prepare" step.

share|improve this answer

Another DVCS worth to be considered (of course it will work as simple user) is fossil.

It has a ton of tempting features:

  • single small-sized binary with no external dependencies
  • works on all mainstream operating systems
  • built-in web interface, tickets, wiki, blog (it's known as "github in a box")
  • its "dad" is D. Richard Hipp - the author of sqlite
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.