Moving between version control systems
As many people have expressed in their blogs after Bubulle’s initial rant, I am also joining the game :) Some weeks ago I decided to finally move my personal documents repository from CVS to SVN - Why SVN? Because I don’t need a distributed system, I am the only person with write (or read) access to it… Besides, I’m too lazy - The one feature that made me start using SVN and not any other system is that you can use it just as if it were CVS, but without the ridiculous constraint placed by just integrating many individual files instead of managing the whole beast as a repository. I had a problem, though, that made me lose good part of an evening - I think it might be related to #333105, but I’m not sure: I converted my repository using cvs2svn, which saved all my five years worth of commit history (whee!), grouping commits that seemed to belong together in single SVN transactions (whee!!)… But binary files were all corrupted. To make things worse, I didn’t notice this until I had to present a talk in Peru - and my laptop’s working copy was severely FUBAR. Well… I managed to give my talk - And yesterday I finally decided to restore sanity to my life, reviving my doc_gwolf SVN tree. The stupid steps?
- cvs2svn --encoding=ISO-8859-1 -s /home/cvs/doc_gwolf /home/svn/doc_gwolf
- cd /tmp; svn co file:///home/svn/doc_gwolf
- Locate all files which differ between the two checkouts
- As I had done some work without committing, check against the list what was text, what was binary
- For each of the binary files, svn remove $file;cp /tmp/cvs/doc_gwolf/$file $file; svn add $file
- Add/replace all the files which were locally modified
- Everything seems to work? Ok, svn ci, and be merry.
Phew :-/
Comments
floh 2005-12-15 14:09:34
RE: Moving between version control systems
http://www.apache.org/dev/cvs2svn.html
you probably forgot setting the binary files -kb ;)
cheers