This is a step-by-step guide to importing and mirroring a Subversion project into a Git repository.
- In Bitbucket Server, create a project by clicking Create Project or select the existing one.
- Add an empty Git repository to your project by clicking Create Repository or select the existing repository.
- Specify the settings for the initial configuration of a Subversion project that you want to import or mirror. To do this:
- On an empty repository page, click SVN Mirror.
- In the existing non-empty repository, click
Specify the following details:
Repository Settings, and then click SVN Mirror in the sidebar menu.
- URL to the root folder of a Subversion project
- credentials to log in a Subversion repository that contains the required Subversion project
- select the way to identify a Subversion project layout (the trunk, branches, tags, and shelves). For the detail information, see the Identifying Subversion project layout section.
- specify the email domain for the automatic Git author generation
- To start the initial configuration of the project, click Continue.
To reset the initial configuration settings that you’ve specified, click Reset to Defaults.
- After the initial configuration, review, and if required, adjust the configuration settings to import or mirror your Subversion project properly. See the Import and mirror configuration settings section for the detailed information.
To restore previous configuration setting that you’ve specified, click Revert Changes.
To go back to the initial configuration of a Subversion project, click Back.
To import a Subversion project into a Git repository, click Import.
After import, synchronization between the Git and the Subversion repositories is disabled.
To start synchronizing the Git repository with the imported Subversion project and the original Subversion repository, click Enable on the Mirror Status pane.
To mirror a Subversion project into a Git repository, click Mirror.
Git repository with the imported Subversion project keeps synchronized with the original Subversion repository. The changes committed either with Subversion or Git are synchronized in both directions.
In case you import or mirror into the non-empty Git repository, the commits that already exist in this repository become unsynced. After import, resolve conflicts manually on the Unsynced Commits tab.
Importing and mirroring may take significant time. It depends on the size of your Subversion project.