目次

前のトピックへ

間違えたときのやり直し

次のトピックへ

用語集

このページ

このエントリーをはてなブックマークに追加

bitbucketの使い方

_images/bitbucket-01.JPG

bitbucket は、フリーのホスティングサービスです。 以前は対応する VCSMercurial だけでしたが、現在は Git も 使用できるようになっています。

Git が使えるホスティングサービスは github が有名です。 しかし、 github ではパブリックなリポジトリを作成できますが、プライベートなリポジトリを作成できません。 bitbucket では無制限でプライベートなリポジトリを作成できます。

サインアップ

まずは bitbucket に登録しましょう。 ユーザー名、メールアドレス、パスワードを入力するだけです。

_images/bitbucket-signup.JPG

ログイン

ログインは通常の Web サービスと同様に、ユーザー名とパスワードでログインします。

_images/login.JPG

リポジトリの作成

まずは自分専用の リポジトリ を作成しましょう。

ヒント

今回作るのは リモートリポジトリ です。

_images/create-repository.JPG

ヒント

「Private」を選択すると、リポジトリを公開せずに使えます。 「Issue tracking」を選択するとタスク管理が、「Wiki」を選択するとWikiが使えるようになります。

「Issue tracking」を選択した場合、忘れずに Issue Service を有効にしましょう。 これを有効にすると、コミットログにある決まった形式でログを書くと、自動的にタスクチケットへのコメントを記述してくれます。

_images/issue-service.JPG

たとえばコミットログをこのように記述すると、

see #1 画像が表示されない問題を修正

タスクチケット 1 へのコメントとして登録されます。また、

fixed #2 トップページヘのリンクが正しくない問題を修正

というように記述すると、 タスクチケット 2 がクローズされます。

リポジトリのクローン

bitbucket に作成したリポジトリは、通常の リモートリポジトリ と同じです。 クローン元リポジトリに

https://bitbucket.org/[ユーザー名]/[リポジトリ名]

を入力して クローン しましょう(参照: 既存リポジトリをクローン )。

ヒント

この時

https://[ユーザー名]@bitbucket.org/[ユーザー名]/[リポジトリ名]

とすると、ユーザー名の入力を省略できます。

クローン した リポジトリ は通常の ローカルリポジトリ と 同じです。自分のPCに ローカルリポジトリ があり、 bitbucketリモートリポジトリ があると考えればよいでしょう。

リポジトリのforkとpull request

公開されている bitbucketリポジトリ は自由に クローン できます。 自分のPCに クローン するのではなく、 bitbucket 上で クローン することを fork といいます。試しにこのドキュメントの リポジトリ を fork してみましょう。

https://bitbucket.org/toruuetani/toruuetani.bitbucket.org
_images/fork.JPG

なぜ fork するのでしょうか?

大抵の場合、 bitbucket で公開されている リポジトリ はあなたのものではありません。 したがって、公開されている リポジトリクローン して コミット を重ねたとしても、 あなたの コミット を元の リポジトリ に対して push することはできません。

ただし、 fork しておくと元の リポジトリ の持主に対して、自分の変更をインポートするよう リクエストができるようになります。これを pull request と言います。

_images/pullrequest.JPG

pull request されたらどうするか?

リクエストが妥当かどうか判断するのは、あなた次第です。自分にとって有用であると考えるなら、 Accept しましょう。妥当でないと判断したなら、 Reject しましょう。

_images/pullrequest-02.JPG

fork元の変更を取り込むには?

fork元の リポジトリ とあなたの リポジトリ は別物であり、 fork元の変更があなたの リポジトリ に自動的に反映されることはありません。

fork元の変更を取り込みたい場合は、 ローカルリポジトリ を経由します。

  1. まずはあなたの リポジトリクローン して ローカルリポジトリ を作成しておきます。
  2. 次に同期ペインの リモートリポジトリ にfork元のURLを入力します。
  3. 取り込みたい変更をfork元から pull します。
  4. 最後に取り込んだ変更をあなたの リポジトリpush します。

ヒント

この手順は bitbucket に限らず、複数の リポジトリ を連携させる時に有効です。