Add instructions to migrate Git repos to SVN

git-svn-id: https://svn.barcelli.net/svn/admin-svn@7 afa8f52d-f8fe-497e-b2ae-23cba056c779
This commit is contained in:
kiko 2021-11-15 08:31:26 +00:00
parent f990ab53f0
commit 555c4ca52f

View file

@ -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
----------