This is a fork of https://github.com/practicalweb/TRAC-SVN-to-GIT-migration which has been updated to work with PostgreSQL.
Where does this differ from the original:
- supports Trac 0.12 style commit message comments
- scripts no longer chained
- uses PostgreSQL
Most git svn howto’s add —no-metadata. When using this for the initial checkout for this script, there is no list of SVN revisions and it fails to extract the lookupTable of Git<→SVN commit id’s
- edit convertTracTickets.php to match your database details
- extract the SVN<→Git revision map with extractRevList.sh
- convert the trac tickets (php convertTracTickets.php)
Use this script if you have an existing trac project which has built up a history with svn and you have switched to git.
This project will have tickets which reference svn revision numbers – but now the project needs git IDs instead.
extractRevList.sh – will extract a list of git IDs annd svn revision numbers from the history created by git-svn
convertTracTickets.php – This will update the trac database – so that the links to commits still work.
This code has worked for me – but I STRONGLY SUGGEST TAKING BACKUPS before starting.
THIS CODE IS POTENTIALLY DESTRUCTIVE
USE AT YOUR OWN RISK