Project of the day was to revive an old SVN repo project and get some changes made.
I no longer have all of the mod-svn+apache stuff working and didn’t want to work on that.
I did have an “svnadmin dump” of the old SVN repo though. The project name is emissary.
- cd /tmp; svnadmin load emissary < emissary.dump
- cd ~/projects; git svn clone file:///tmp/emissary -t tags -b branches -T trunk emissary
- cd emissary; ant all test
- Converted branches to tags, Removed some obsolete branches, using git branch -r -d
- add “github” stanza to .git/config, and create the empty repo on github.com
- git push github
- git push –tags github
Double plus un-bad.
That’s what I wish I had done, anyway. Turns out git saved the bacon in more ways
than one. Initially I didn’t read the man page for “git-svn” far enough to get
the tags, trunk and branches. Started hacking on my shiny new git repo and did
a half-day’s work, committed, pushed to github, then realized I didn’t have any
of the historical tag info from svn. Bummer.
Here’s what I did at that point.
- git svn dcommit
- remove and recreate the git repo using the proper clone command
- verify all work still in place — yes it is!
- remove and recreat the github repo
Thanks, git.










