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:
parent
f990ab53f0
commit
555c4ca52f
32
readme.txt
32
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
|
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
|
REFERENCES
|
||||||
----------
|
----------
|
||||||
|
|
Loading…
Reference in a new issue