Google CodeにホストしていたJavaScriptをBitbucketに移行する | A Day In The Boy's Life

A Day In The Boy's Life

とあるエンジニアのとある1日のつぶやき。

アナウンスされているとおり、Google Code が今月の2016年1月でサービスを停止するようです。

このブログではAmebloのフリープラグインのJavaScriptをGoogle codeにホストしたよ に書いたように、ソースコードを整形して表示してくれるSyntaxHighlighterや、Twitterなどのシェアボタンの設置をするためのJavaScriptのコードをGoogle Codeにホストしていたのですが、サービス終了に伴い別のホスティングサービスに移行する必要が出てきました。


まぁ、ホスティングサービスと言っても、Google CodeのSVNの公開リポジトリ上のソースのパスを読み込ませていただけなので、同様のことができるサービスがないかを探していてBitbucket というサービスを使ってみることにしました。
今時、ソース管理するならGitHubでしょってのはあるのですけれども、GitHubはプライベートリポジトリが無料だと持てないのと、特にほかに公開しているソースとかもないのでBitbucketで十分かなと思い選択してみました。



Google CodeのソースをBitbucketにインポートする


とりあえずBitbucketにアカウントを作成したら、リポジトリのインポートメニューからGoogle CodeのソースをBitbucket上のリポジトリへインポートします。


Bitbucket-menu

インポート対象となるソースの選択肢にGoogle Codeがあるのでインポート自体は難しくはありません。

Google Codeのプロジェクト名を指定して、リポジトリのタイプ(自分の場合はSubversionで管理してたので)を選択し、リポジトリのインポートボタンから取り込めます。


bitbucket-import


ポイントはリポジトリ名(Repository name)に「ユーザー名.bitbucket.org」と指定することです。
こうすることで、このリポジトリ名がそのまま公開されるURLとしてホストしている各ファイルへアクセスすることが可能となります。


ただ、そのままやると下記のようにインポート時にエラーが出てしまいました。


-snip-
17:10:39 Subversion checkout successful
17:10:39 Creating new git repository...
17:10:39 Initialized empty Git repository in itboy/itboy/bb_tmp/.git/
17:10:40 Done
17:10:42 Done
17:10:42 fatal: No existing author found with 'itboy (itboy)'
17:10:42 Unable to convert svn checkout to git
17:10:42 Svn checkout failed: <class 'bitbucket.apps.async.tasks.ImportException'>: Command failed. Return value: 128

理由は、Gitへのインポート時にauthorの情報が正しくないというもので、しばらくはまりましたがBitbucket上のプロファイルを下記のように編集することでうまくインポートできるようになります。

(プロファイルの編集は、右上の人のアイコンからSettingsを選択)


bitbucket-settings
要は、姓名の欄にユーザー名とメールアドレスを指定してGitのauthorの形式に合わせてあげることでうまくインポートすることができます。


リポジトリへのインポートが完了すれば、先ほどのリポジトリ名で指定したURLでアクセスが可能となります。

例えば、foo.jsをリポジトリに登録した場合は、


http://itboy.bitbucket.org/foo.js


というURLで公開されますので、後はこのJSファイルをブログに読み込ませるということで完了です。