diff --git a/readme.txt b/readme.txt index 48292ca..79fa677 100644 --- a/readme.txt +++ b/readme.txt @@ -35,6 +35,38 @@ sudo chown -R www-data:www-data /var/www/svn/myrepo sudo chmod -R 775 /var/www/svn/myrepo +MIGRATING A REPO FROM GIT TO SVN +-------------------------------- + +You will need git-svn installed on your PC. + +1. Create an empty repo on the SVN server (ie. myrepo in the previous case) + +2. From your PC create an empty standard SVN structure on the repo: + svn mkdir https://svn.barcelli.net/svn/myrepo{trunk,branches,tags} + +3. Clone the SVN repo as GIT on your PC with a standard SVN layout: + git svn clone https://svn.barcelli.net/svn/myrepo --stdlayout + +4. Add the original GIT repo as a remote + cd myrepo #Change into the repo directory + git remote add origin https://path-to-your-old-git-repo.git + git fetch + +5. Create a local branch for the remote master with a different name (ie. old-master): + git checkout -b old-master origin/master + +6. While on the old-master local branch perform a rebase: + git rebase --onto master --root + +7. Push all the commits to the SVN repo: + git svn dcommit --add-author-from + + Now you have the full history of the GIT commits in the SVN repo on the SVN server. + +8. Going forward just freshly checkout the SVN repo and start working normally with SVN: + svn co https://svn.barcelli.net/svn/myrepo + REFERENCES ----------