ARB-SVN-Repository

http://dev.mikro.biologie.tu-muenchen.de/statsvn/loc_small.png

You can browse the source in trac:

directly in SVN:

or you  download a source-tarball
(Note: source-tarballs are included in all  builds. Pick arbsrc.tgz)




But the recommended way to access ARB source is to checkout a local copy using SVN:

External read access

Checkout the development trunk using

svn co --username coder --password gimmeARBsource http://svn.mikro.biologie.tu-muenchen.de/svn/trunk ARB

or the latest stable release using

svn co --username coder --password gimmeARBsource http://svn.mikro.biologie.tu-muenchen.de/svn/branches/stable_5.0 ARB

If you have made patches to ARB and like to share them with the public, use

svn diff >my.patch

to create a patchfile and send it together with a short description to devel@….

Internal access

svn co svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/trunk dest-dir

or w/o ssh

svn co file:///menuett1/repository/ARB/trunk dest-dir

Conventions

  • When commiting changed code to the repository please separate between
    • real changes and
    • cosmetic changes (where you only change indentation, TABs, etc.)

and commit both separately. Otherwise it is extremly difficult to track real changes.

  • Try to keep changesets compact (do not change 10 different things and checkin them all together)
  • On commit provide comments describing what changed why.

Restoring deleted files

To restore a deleted file together with it's history use

cd $ARBHOME/PATHTODELETEDFILE
svn cp svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/trunk/PATHTODELETEDFILE/DELETEDFILE@FROMREVISION .

Branching and Merging

Branching

  • create YOURBRANCH from lastest trunk revision
    svn cp svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/trunk svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/branches/YOURBRANCH
    
  • create YOURBRANCH from specific trunk revision
    svn cp svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/trunk@REVISION svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/branches/YOURBRANCH
    

Merging

  • merging from YOURBRANCH to trunk
    • cd into a checkout of trunk
      svn merge -c CHANGESET svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/branches/YOURBRANCH
      
  • merging from trunk to YOURBRANCH
    • cd into a checkout of YOURBRANCH
      svn merge -c CHANGESET svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB/trunk
      

Then

  • check conflicts + test
  • check in changes (please add CHANGESET to log message)

CHANGESET can be

  • REV (one changeset)
  • REV1,REV2,REV3 (specific changesets)
  • REV1:REVn (range of changesets)

See  Branching and Merging for details


hax

  • Post-edit commit comments:
    • [Done once: Create hook pre-revprop-change in REPOSITORY/hooks]
    • Example:
      svn propset --revprop -r ### svn:log "new logtext" svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB
      
      or to edit in vi
      svn propedit --revprop -r ### --editor-cmd vi svn:log svn+ssh://LOGINNAME@menuett.mikro.biologie.tu-muenchen.de/menuett1/repository/ARB
      
    • trac has to be resynced afterwards using root@waltz> trac-admin /var/www/trac/arb resync ###
    • [Note: replace ### with revision number and LOGINNAME with your accountname]