Trying to convert a SVN repo to Git. The Ruby version works, but does not commit all the files with the correct CRLF chars – seems to ignore the global settings.
svn2git http://svnhost.xx.com/svn/repo/mobile/circdesk-android/trunk --rootistrunk --verbose > x
I can reconvert the repo afterwards to fix the endings (see this) but it makes diffing before and after tricky. Tried to hack the Ruby code to add “text = *” to the .gitattributes file. No dice.
So I tried another version of svn2git based on Qt. First, use Linux. Windows would have no chance.
Installed the Qt libs. I build subversion, apr, and aprutil from scratch, and then link failed. Tried:
export LD_LIBRARY_PATH=/usr/local/lib export QTDIR=/home/dchwalis/tools/QtSDK/Desktop/Qt/4.8.1/gcc
Changed all the APR includes to local
# must use local APR APR_INCLUDE = /usr/local/apr/include/apr-1 APR_LIB_DIR = /usr/local/apr/lib APR_UTIL_INCLUDE = /usr/local/apr/include/apr-1 APR_UTIL_LIB_DIR = /usr/local/apr/lib
and rules :
create repository demo-convert end repository match /trunk/ repository demo-convert branch master end match
So it compiled and linked. But when I run I got an error message, basically SVN could not use the
"http:" access method. Looks like I was missing the neon lib. (
ra_neon). Download and build neon. No change. Sigh.
apt-get all the -dev versions of subversion, APR, and APR-util. Changed all the APR includes to local
SVN_INCLUDE = /usr/include/subversion-1 APR_INCLUDE = /usr/include/apr-1.0/ APR_LIB_DIR = /usr/lib SVN_LIBDIR = /usr/lib
Now it works, but there is a problem with the SVN itself.
Invoked as:' ./svn-all-fast-export --rules=rules http://svnhost.xx.com/svn/repo/etl/trunk' WARNING; no identity-map specified, all commits will be without email address Loading rules from "rules" svn: Can't open file 'http://svnhost.xx.com/svn/repo/etl/trunk/format': No such file or directory Failed to open repository
Sigh. I give up.