Migration from CVS to SVN: Difference between revisions

From GRASS-Wiki
Jump to navigation Jump to search
m (→‎Basic: cosmetics)
(→‎Gotchas: moved to discussion page)
Line 5: Line 5:
* The SVN command line interface is just like CVS, many tasks are identical - just change the program name from cvs to svn.
* The SVN command line interface is just like CVS, many tasks are identical - just change the program name from cvs to svn.


== Gotchas ==


* cvs2svn is known to break binary files (images) which were not imported into the CVS with the -kb flag. Luckily Glynn fixed most of these some months ago.
* Files using keyword substitution, such as $Date$ in the description.html files, will have to have support for that enabled manually, once per file (or write a find routine with | xargs svn ...).
$ svn propset svn:keywords "Date" filename.txt
$ svn commit
or
$ find . -name '*.c' | xargs svn propset svn:keywords "Date"
$ find . -name '*.html' | xargs svn propset svn:keywords "Date"
$ svn commit
* how to maintain timestamps of files? We want to keep the last modification date, not the date of local download


== GRASS CVS repository structure ==
== GRASS CVS repository structure ==

Revision as of 23:07, 5 December 2007

This page contains notes related to GRASS code migration (planned) from CVS to SVN.

Basic

  • The SVN command line interface is just like CVS, many tasks are identical - just change the program name from cvs to svn.


GRASS CVS repository structure

/grass-cvs
|
+---/CVSROOT
|
+---/grass
|
+---/grass51
|
+---/grass6
|
+---/grass_doc
|
+---/libgrass
|
+---/newsletter
|
+---/programgrass50
|
+---/web

GRASS OSGeo SVN repository structure

/grass-svn
|
+---/grass
|    |
|    +---/trunk (grass6 CVS HEAD)
|    |
|    +---/branches
|    |    |
|    |    +---/releasebranch_5_x (note: 5_5 based on grass5 CVS HEAD)
|    |    |
|    |    +---/releasebranch_6_x
|    |
|    +---/tags
|
|---/grass-addons
|
+---/grass-web
|    |
|    +---/trunk

Scripts:

./grass-cvs2svn-base.sh
./grass-cvs2svn-s2.sh
./grass-cvs2svn-wxpython.sh

grass-svn2

GRASS 7 development notes

External links

SVN hosting

There are two main options to host the new SVN repository.