I have a big svn repository with big files. I'm converting it to git. But I have this error in Apache log:
"fatal: Out of memory? mmap failed: Cannot allocate memory"
I use:
git version 1.7.2.5
gitweb version 1.7.2.5
git is compiled with NO_CURL=1 NO_MMAP=1
I install git and gitweb using this guide: https://github.com/tmacam/private-git-on-dreamhost
And execute in server:
git config --global pack.windowMemory "100m"
git config --global pack.SizeLimit "100m"
git config --global pack.threads "1"
git config --global pack.packSizeLimit "100m"
And when I create server-repository I use:
git config pack.windowMemory "100m"
git config pack.SizeLimit "100m"
git config pack.threads "1"
git config pack.packSizeLimit "100m"
In my computer, I use this convert script:
$1=~/git-repo
$2=file:///home/user/svn/data/Repo
$3=http://mygit.server.com/repo.git
rm -Rf $1
mkdir $1
cd $1
/var/lib/gems/1.8/bin/svn2git $2 --rootistrunk --verbose
rm -Rf ~/temp
git svn clone $2 --no-metadata -A ~/authors.txt ~/temp
cd ~/temp
git svn show-ignore >> $1/.gitignore
rm -Rf ~/temp
cd $1
echo "Add remote"
cd $1
/usr/bin/git remote add origin $3
echo "Add git ignore"
git add .gitignore
git commit -m 'Convert svn:ignore properties to .gitignore.'
echo "Repack"
git config --global pack.windowMemory "100m"
git config --global pack.SizeLimit "100m"
git config --global pack.threads "1"
git config --global pack.packSizeLimit "100m"
git config pack.windowMemory "100m"
git config pack.SizeLimit "100m"
git config pack.threads "1"
git config pack.packSizeLimit "100m"
git repack -a -d
git gc
echo "Up server"
cd $1
/usr/bin/git push origin master
Can you help me?