.. -*- mode: rst ; ispell-local-dictionary: "american" -*- ===================================================== Tools for Migrating a Subversion repository to Git ===================================================== :Copyright: 2011 by Hartmut Goebel <firstname.lastname@example.org> :Licence: GNU General Public License version 3.0 (GPL-3.0) These scripts and data has been used for migrating PyInstaller__ from Subversion repository to Git. This migration was done in December 2012. __ http://www.pyinstaller.org/ Basically the process is this: * Create a local mirror of the SVN repository. This speeds conversion for the case you have to restart from scratch. * Convert the SVN repo to git using git-svn (`git svn`). * Cleanup the git repositories as required and according to your needs. * Upload the git repository to github, bitbucket, or wherever you like. Please see `migrate-git.sh` for how it works. Requirements ==================== * My hacked version of ESR's reposurgeon from https://github.com/htgoebel/reposurgeon * A slidly modified version on Yuval Kogman git-svn-abandon, available at https://github.com/htgoebel/git-svn-abandon * svnsync, svnadmin, git, Python 2.7, bash, diff, patch, ... Installation ================ WARNING: The scripts are not bullet-proof. 1) Adopt config.sh to your needs. WARNING: Filenames with spaces (and other problemativ characters) are NOT supported. 2) The script `migrate-git.sh` will clone reposurgeon and git-svn-abandon into the same directory, if they do not exist. 3) See stage-9-postfixes.sh for last works.