Import code to Github from Google Code
• Mark Eschbach
So way back when I published some of the libraries I was using for my projects. The primary export to Maven Central was a library which would setup and tear down Java Servlet containers intended for testing. There was also a library of iterators and such I was tired of rewriting everywhere I went. Back then Github was cool, but so was Google Code. Well, that is defunct now. Unforunately due to life I missed the window to use their snazy tool. So now I’m stuck with a zip.
The archive kind of looks like a subversion repository, probably because it was. The only artifact unexpected element is the wiki
directory, which seems to contain the contents of all the other documents. Alright, time to form a plan on how to get this into my Github account. Under the tags
there is one called psi-reactor-2.4
which contains what appears to be another copy of the tree. Subversion was strange in many ways and their branching + tagging system was no exception.
I think the history is permenantly lost, but I’m going to check again. If I could get a zip of the subversion repo that would make dealing with this a lot easier. Alrighty, I really messed up there.
So onto my plan. I think I’m going to being with trunk
. Primarily because I’m not sure which tags go in which order. I mean I could probably figure it out, but I’m guessing this is going to be less work. On second thought, I think I’m going to start with the oldest tags, then add in the other incrementally. Oh man! Reading through the branches and tags turns out they aren’t structured like a dump of subversion at all. They all contain subsets of the trunk
directory. I feel kind of bad about this, I should have migrated this earlier.
New plan: dump trunk into a git repo, then push the repo up to github. Doh! The subversion .svn
directory is there! Hidden by Finder. Should I get my hopes up? Are they going to be crushed as soon as I try to open the repo with modern Subversion tools? Let’s find out!
Well..time to brush off my memory of how to convert Subversion repositories. Ah, good old git–fast-version-control. Unforunately I don’t have a remote HTTP serve to hide this behind, nor do I want to find a WebDAV server or associate modules…or look up how to use straight SVN. I’ll probably regret that. Local SVN repository to git: Maybe saved by Stack Overflow again? Well, that SO post failed. Onto the next? How about one that addresses the problem I’m actually: Unable to connect to a repository at URL
. Git SVN Is Unable to Fetch from SVN Repository. They suggest suing svnserve
. Sure, why not.
81996 2016-12-07T07:17:11.883155Z 127.0.0.1 - - ERR - 0 210005 No repository found in 'svn://localhost/trunk/psi'
I think SVN makes itself clear there.
Back to the original plan. So copying everything over worked well. With the exception there are a ton of .svn
files, I’m assuing because it was a zip of the working copy? I’ll just add .svn/
to .gitignore
and I’l be fine. I wish I had more time to clean up the repository and break out the associated projects however these will have to go in my never ending TODO list. checkout meschbach/phunctional-system-integration