RSE SVN
(→SVN Access) |
(→SVN Access) |
||
Line 9: | Line 9: | ||
To get access to the RSE SVN, you must have an account on the timmy server and be a RSE group member. | To get access to the RSE SVN, you must have an account on the timmy server and be a RSE group member. | ||
− | The SVN is accessed using the svn | + | The SVN is accessed using the svn protocol, with the following connection string: |
<code> | <code> | ||
− | svn://[username]@repos.gbar | + | svn://[username]@repos.gbar.dtu.dk/jcan/mobotware |
</code> | </code> | ||
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: | ||
− | svn checkout svn | + | svn checkout svn://[username]@repos.gbar.dtu.dk/jcan/mobotware mobotware |
and after that you just go to a place in the tree and update from the repository, or commit your changes by: | and after that you just go to a place in the tree and update from the repository, or commit your changes by: | ||
Line 26: | Line 26: | ||
make | make | ||
<make changes> | <make changes> | ||
− | svn commit | + | svn commit -m "release remark - what is fixed/added" |
The repository username/password is managed by jca@elektro.dtu.dk. | The repository username/password is managed by jca@elektro.dtu.dk. |
Revision as of 09:44, 29 August 2012
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.
Contents |
SVN Access
To get access to the RSE SVN, you must have an account on the timmy server and be a RSE group member.
The SVN is accessed using the svn protocol, with the following connection string:
svn://[username]@repos.gbar.dtu.dk/jcan/mobotware
On a linux terminal an initial checkout of the (full) mobotware repository could be:
svn checkout svn://[username]@repos.gbar.dtu.dk/jcan/mobotware mobotware
and after that you just go to a place in the tree and update from the repository, or 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.
If you do not need to update the repository, then get the version available on campusnet, as described above.
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):
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 $" ...