RSE SVN

From Rsewiki
(Difference between revisions)
Jump to: navigation, search
(Keywords in source file)
(SVN Access)
 
(10 intermediate revisions by one user not shown)
Line 1: Line 1:
 
RSE projects are all developmental projects, with ongoing improvement and research.
 
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.
 
 
[[Old CVS setup]]
 
  
 
== SVN Access ==
 
== SVN Access ==
  
To get access to the RSE SVN, you must have an account on the timmy server and be a RSE group member.
+
Mobotware has open read-only access (as of July 2021).
  
The SVN is accessed using the svn+ssh protocol, with the following connection string:
+
To get access, with update rights, you must have an account on the repository.
  
<code>
+
On a linux terminal an initial checkout of the (full) mobotware repository could be:
svn+ssh://[timmy username]@timmy.elektro.dtu.dk/home/project-users/rse/svnrepo
+
</code>
+
  
As the SVN is run through SSH, you will be requested to input your SSH password MANY times, until you have setup your computer with a shared SSH key.
+
svn checkout svn://repos.gbar.dtu.dk/jcan/mobotware mobotware
  
On a linux terminal an initial checkout of the (full) repository could be:
+
(if you need a username for read-only access, use 'anonymous', and any password).
  
svn checkout svn+ssh://[timmy username]@timmy.elektro.dtu.dk/home/project-users/rse/svnrepo mobotware
+
If you have update rights, then 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:
+
  
 
  cd mobotware
 
  cd mobotware
Line 28: Line 21:
 
  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.
  
 
== Handling SVN projects ==
 
== Handling SVN projects ==
Line 42: Line 37:
 
A great toturial for generating shared SSH keys can be found in the article [http://www.cvrti.utah.edu/~dustman/no-more-pw-ssh/ No More Passwords (with SSH)] or [http://www.debian-administration.org/articles/152 password-less login]
 
A great toturial for generating shared SSH keys can be found in the article [http://www.cvrti.utah.edu/~dustman/no-more-pw-ssh/ No More Passwords (with SSH)] or [http://www.debian-administration.org/articles/152 password-less login]
  
The method is in short (from your home directory):
+
The method is in short (from your home directory - old timmy server used as an example):
  
 
  ssh-keygen -t rsa
 
  ssh-keygen -t rsa
Line 53: Line 48:
 
and all the rest (including ssh-login to timmy) without being bugged with passwords.
 
and all the rest (including ssh-login to timmy) without being bugged with passwords.
  
=== Keywords in source file ===
+
=== 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.
 
You may add SVN keywords anywhere in a  source file and set SVN to update the keyword every time a new version is committed.

Latest revision as of 13:25, 7 July 2021

RSE projects are all developmental projects, with ongoing improvement and research.


Contents

[edit] SVN Access

Mobotware has open read-only access (as of July 2021).

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.

[edit] 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

[edit] SSH Shared keys

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.

[edit] 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 $"
...
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox