RSE SVN: Difference between revisions
Line 8: | Line 8: | ||
To get access, with update rights, you must have an account on the repository. | To get access, with update rights, you must have an account on the repository. | ||
On a linux terminal an initial checkout of the (full) mobotware repository could be: | On a linux terminal an initial checkout of the (full) mobotware repository could be: | ||
Line 19: | Line 13: | ||
svn checkout svn://repos.gbar.dtu.dk/jcan/mobotware mobotware | svn checkout svn://repos.gbar.dtu.dk/jcan/mobotware mobotware | ||
(if you need a username for read-only access, use 'anonymous', and any password). | |||
If you have update rights, then commit your changes by: | |||
cd mobotware | cd mobotware | ||
Line 29: | Line 25: | ||
The repository username/password is managed by jca@elektro.dtu.dk. | The repository username/password is managed by jca@elektro.dtu.dk. | ||
== Handling SVN projects == | == Handling SVN projects == |
Revision as of 13:23, 7 July 2021
RSE projects are all developmental projects, with ongoing improvement and research.
For proper version management, backup and sharing, the projects are managed in a central SVN repository, hosted by the DTU Elektro production server Timmy.
SVN Access
To get access, with update rights, you must have an account on the repository.
On a linux terminal an initial checkout of the (full) mobotware repository could be:
svn checkout svn://repos.gbar.dtu.dk/jcan/mobotware mobotware
(if you need a username for read-only access, use 'anonymous', and any password).
If you have update rights, then commit your changes by:
cd mobotware svn update make clean make <make changes> svn commit -m "release remark - what is fixed/added"
The repository username/password is managed by jca@elektro.dtu.dk.
Handling SVN projects
Managing the projects in SVN should be done according to the guidelines in the SVN book[1]. It is really good and usefull reading.
At a prevoius robot-meeting, there was given an introduction for SVN useage.
The slides from the presentation can be found here: Media:SVN_Best_practice.pdf
A great toturial for generating shared SSH keys can be found in the article No More Passwords (with SSH) or password-less login
The method is in short (from your home directory - old timmy server used as an example):
ssh-keygen -t rsa ssh-copy-id -i .ssh/id_rsa.pub [timmy_username]@timmy.elektro.dtu.dk
then (after a final password) you should be able to do a (in your svn tree)
svn update
and all the rest (including ssh-login to timmy) without being bugged with passwords.
SVN Keywords in source file
You may add SVN keywords anywhere in a source file and set SVN to update the keyword every time a new version is committed.
Add $Rev$, $Id$, $Author$ or $Date$ in the sourcefile, and tell SVN to update the used keywords
$ svn propset svn:keywords "Rev Id Author Date" poo.cpp poo.h $ svn commit -m "Added keyword update"
Then the file is updated, to something like:
poo.h:
/** * Mobotware sourcefile sample * $Date: 2011-07-03 07:34:42 +0200 (Sun, 03 Jul 2011) $ * $Id: poo.h 1575 2011-07-03 05:34:42Z jca $ */ #define REVISION "$Rev: 1575 $" ...