One of the larger projects I am working on recently decided to switch from Assembla to Redmine for project management. There are many advantages to Redmine versus Assembla the largest being cross project management for Redmine and in Assembla projects are completely isolated. There are some others that our team finds extremely useful including the stuff to do plugin for Redmine that allows for drag and drop priorities for tickets. It is also going to be nice to finally be in complete control of backing up our data, making changes, uptime, etc.
The below specifically applies to Assembla however can be used for any trac project that is on a remote server. At first I was under the assumption I would have to install trac, have it up and running, and then import into Redmine. This is not the case as the Redmine task will use the directory structure to do all the importing so you only need to backup the trac directory on the remote server and then copy it to the new Redmine server.
Follow the directions below to import an Assembla Trac project into Redmine.
- Open Assembla Space: First login to Assembla and then choose the Assembla Space that has the trac project you want to import.
- Open Trac Project: Click on the “Subversion & Trac” tab within the project.
- Open Import/Export Trac Database: Click on the “Import or Export your Trac database here” link where you will be required to login.
- Get Trac Backup: Click on the “Trac Backup” button which will open a new download window which you should save to your desktop.
- Transfer to Redmine Server: Get the Assembla Trac backup to the new Redmine server and uncompress to a new directory that has read and write permissions for the same user that is used to run Redmine.
- Migrate From Trac: Now you want to migrate the Assembla Trac project into Redmine which can be done by issuing the below command as the Ruby user.
- rake redmine:migrate_from_trac RAILS_ENV="production"
After running the above you will be required to answer some questions before the rake task can run.bash
- [web@server redmine]$ rake redmine:migrate_from_trac RAILS_ENV="production"
- (in /home/web/redmine)WARNING: a new project will be added to Redmine during this process.
- Are you sure you want to continue ? [y/N] y
- Trac directory : /home/web/trac/projects/gateway
- Trac database adapter (sqlite, sqlite3, mysql, postgresql) [sqlite]: sqlite3
- Trac database encoding [UTF-8]:
- Target project identifier : gateway
Above the /home/web/trac/projects/gateway directory is where the backup from Assembla was unpacked. Make sure to choose sqlite3 as the database adapter as well and the project identifier which will be created if it doesn’t already exist is gateway.When things are done you will get an output letting you know exactly what has been migrated as shown below.bash
- Components: 10/10
- Milestones: 8/8
- Tickets: 126/126
- Ticket files: 1/1
- Custom values: 362/362
- Wiki edits: 81/81
- Wiki files: 3/3
- Verify Redmine Project: Now login to your Redmine application via the web and verify that everything has been transferred into Redmine correctly.
In the upcoming days I will have a couple more articles relating to configuring an SVN repository, configuring a Git repository, and more detailed information regarding SVN/Git and changesets.