2ヶ月ほど前に2016年にGoogle Codeが閉鎖というニュースが流れた。
自分もdtlというプロジェクトをGoogle Codeにホスティングしていたのでこれを機に移行することにした。
Export to Github
Google CodeからGithubへの移行についてはGoogleが公式に提供しているエクスポートツールがある。しかし、自分のプロジェクトだと何故かうまく動かなかった。
あれから2ヶ月が経ち、GWで時間の余裕も出来たので再度チャレンジしてみたが、やっぱり上記のエラーが表示されてしまう。
Wikiの手動マイグレーション
一方で既にGithubにミラー(現本家)を作っていたので、実際に移行しなければいけないのは全5ページのWikiだけだったので諦めて手動でやることにした。
Google CodeのWikiはMoinMoinのそれによく似た独自記法なのでそのままだとGithubのWikiに移行することはできないのだが、Googleが提供しているエクスポート用ツールキットの中にMarkdownへの変換ツール(wiki2gfm.py)がある。
使い方はこんな感じ。
$ git clone https://code.google.com/p/support-tools/
$ cd support-tools/wiki_to_md
$ python wiki2gfm.py --input_file ${入力ファイル名} --output_file ${出力ファイル名}
で、これを使って移行したWikiがこちら↓。
まとめ
というわけで無事Google CodeからGithubに移行することができた。support-toolsはWikiのほかにもIssue Trackerの移行ツールも提供しているのでGoogle CodeからGithubへの自動エクスポートがうまく動かない人は試してみるとよいのではないでしょうか。
おまけ
ちなみにdtlは7年ほど前にC++で書いたdiffのライブラリなんだけど、もう長いことC++書いてないし、別の言語(Goとか)で書き直そうかなぁ。
なお、このライブラリを書いた知見を元にしてSoftware Designに寄稿したdiffのアルゴリズムの解説記事が↓のページで読めます。