From: Martin C. <cos...@wa...> - 2006-05-13 10:23:11
|
Now that cvs is up again, I guess everybody is reinventing the wheel in the form of a little one-liner to convert their local CVS repository to the new style. To save others the time for testing, here is one that worked for me (cut in four to avoid chopping by mailers): find . -name CVS -type d \ -execdir perl -pi -e \ 's|\@cvs.sourceforge|\@fink.cvs.sourceforge|' CVS/Root \; \ -execdir perl -pi -e 's|/cvsroot/fink/||' CVS/Repository \; Note that if you only change the Root and don't change the Repository too (a change I haven't seen mentioned in SF's explanations of the new configuration), you will get thousands of "move away *; it is in the way" messages. Run this inside /sw/fink, or change "." to the root of the repository you want converted. A somewhat more comfortable method would be the following little script, to be saved for example as ~/bin/cvsconvert and to be used as cvsconvert /sw/fink #!/bin/sh # switch sf CVS rep to new version 2006-05-12 [ -z $1 ] && exec echo Usage: cvsconvert directory DIR=$1 for CVS in `find $DIR -name CVS -type d` do perl -pi -e 's|\@cvs.sourceforge|\@fink.cvs.sourceforge|' $CVS/Root perl -pi -e 's|/cvsroot/fink/||' $CVS/Repository done echo ...done I guess something like this should be mentioned on the home page, too. -- Martin |