Skip to content

Did you work in a company so much attached to SVN that it seems they will continue with it until the end of the world? And cherry on the cake, the projects arborescence is so touchy they use deep nested svn:externals. This project is my try to perform a slow but sure migration from SVN to GIT in this context. Svn2GitExt.py is a python script whi…

Notifications You must be signed in to change notification settings

rmartin013/Svn2GitExt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Svn2GitExt

Did you work in a company so much attached to SVN that it seems they will continue with it until the end of the world? And cherry on the cake, the projects arborescence is so touchy they use deep nested svn:externals. This project is my try to perform a slow but sure migration from SVN to GIT in this context.

Svn2GitExt.py is a python script which will automate SVN arborescence cloning into GIT, using git svn to create a bidirectional synchronizing way, and git subtrees to emulate svn:externals projects into the main project.

$ ./Svn2GitExt.py create -d -s -b -u -p -a => Create a GIT clone from into , using main and intermediate repositories hosted on BitBucket project This command will begin creating a GIT clone from a local Subversion working directory.

  • This directory must be up to date with the latest SVN revision, for a simple reason: it will be diffed against the final GIT clone of the main project.
  • The should not exist, and the basename of its path will be used as the main project name, and subtree project names derived from svn:externals will be construct on this model <main_project_name>-ext-<external_index>-. All GIT repositories (main and subtrees) will be created in the dirname of .
  • must be the URL to the BitBucket Project where you want to store your incoming GIT repositories. The REST API 1.0 must be supported by your BitBucket server.
  • is the correspondance file used by git-svn to translate Subversion login to GIT one ("User Name user.name@company.domain")

$ ./Svn2GitExt.py update -d -s -b -u -p => Create a GIT clone from into , using main and intermediate repositories hosted on BitBucket project This command will begin creating a GIT clone from a local Subversion working directory.

  • This directory must be up to date with the latest SVN revision, for a simple reason: it will be diffed against the final GIT clone of the main project.
  • The should not exist, and the basename of its path will be used as the main project name, and subtree project names derived from svn:externals will be construct on this model <main_project_name>-ext-<external_index>-. All GIT repositories (main and subtrees) will be created in the dirname of .
  • must be the URL to the BitBucket Project where you want to store your incoming GIT repositories. The REST API 1.0 must be supported by your BitBucket server.

$ ./Svn2GitExt.py purge -b -u -p => Deleted all repositories from a specifid Bitbucket project accessible from with a browser, using credentials /

About

Did you work in a company so much attached to SVN that it seems they will continue with it until the end of the world? And cherry on the cake, the projects arborescence is so touchy they use deep nested svn:externals. This project is my try to perform a slow but sure migration from SVN to GIT in this context. Svn2GitExt.py is a python script whi…

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages