TOTEM SVN repository

Subversion (SVN): version control system software keeps track of all work and all changes in a set of files, and allows several developers (potentially widely separated in space and/or time) to collaborate.

Documentation

Web Tools

Access

Via SVN+SSH

This is the recommended method. The repository URL (the equivalent of "CVSROOT" from CVS) is:

svn+ssh://svn.cern.ch/reps/totem/

For users with non-standard (non-lxplus) accounts

Usually if you want use non-standard username to connect SVN server, you should type:

$ svn co svn+ssh://USERNAME@svn.cern.ch/reps/totem/trunk totemsw

Some parts of our code are using links (svn:external) through which, unfortunately, non-standard usernames are not propagating. If you face such situation, for example on your local machine, with different username than your lxplus login, please follow these steps:

1. Create (if it does not exists) empty file file ~/.ssh/config with access rights 700.

2. Write to that file two lines:

Host svn.cern.ch
User USERNAME

Here USERNAME should be your lxplus login.

3. Fetch the code from SVN with default setup, not providing username:

$svn co svn+ssh://svn.cern.ch/reps/totem/trunk totemsw

The same trick can be used on shared accounts like monitor or rp. Just put your username to the SSH config and SVN will ask for your password.

Via HTTPS

This is an alternative method, useful from outside CERN and easier to use for Windows users. The repository URL in this case is:

https://svn.cern.ch/reps/totem/

HOWTO

How to fetch TOTEM offline code from SVN repository ?

The recommended method is to use svn protocol over ssh, i.e.:

$ svn co svn+ssh://svn.cern.ch/reps/totem/trunk totemsw

or if you use a different user name for LXPLUS:

$ svn co svn+ssh://USERNAME@svn.cern.ch/reps/totem/trunk totemsw

This command will check out the latest revision of the code (called trunk in SVN-speak, the equivalent of main branch in CVS) into a directory called "totemsw" in current directory.

TotemRawDataLibrary

TotemRawDataLibrary is the package for reading and validating raw data. The code is used in Monitor and OfflineSW, that's why a special treatment is needed. We have decided to separate the package into a standalone project in the SVN repository: totem/trunk/TotemRawDataLibrary. The package is included to Monitor and OfflineSW via svn:externals. In order to assure the Monitor and OfflineSW are kept in compiling and working state, their externals point to a fixed revision of TotemRawDataLibrary, while the development of TotemRawDataLibrary takes place in the HEAD revision.

This structure has beet set up in order to simplify the maintenance. On the other hand, unwise behaviour can cause a lot of troubles. Hence, please avoid committing to TotemRawData unless you are sure that you know what you are doing. In case of any doubts, do not hesitate to ask any of the SVN repository maintainers (Leszek, Jan, etc.).

Flow of modifications

To commit modifications to the development revision (i.e. HEAD revision), simply

  1. commit your changes in TotemRawDataLibrary: svn ci TotemRawDataLibrary.

If you want to make the development version be used by Monitor/OfflineSW

  1. go to the base directory of Monitor or OfflineSW
  2. readjust the external link: svn propedit svn:externals . and modify the revision specification -r.... to your chosen revision. Commit the updated link: svn ci --depth=empty . .

Making tags and branches

Please read the last paragraph of the chapter on svn:externals.

Edit | Attach | Watch | Print version | History: r14 < r13 < r12 < r11 < r10 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r14 - 2016-02-03 - LeszekGrzanka
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    TOTEM All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright &© 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback