2013年4月29日月曜日

bitbucketにgitリポジトリを作成

Bitbucketについて

Bitbucketは、web上でgitリポジトリ管理、共有、他の開発者のコードのフォークなどが可能な無料サービス。同じようなサービスでgithubは有名だが、それとの違いは無料で非公開リポジトリを利用できるという点。 公開せずにコード開発を行いたい場合に重宝するため、アカウントの1つくらいは持っておいてもよいだろう。
ただ使用感として、git pushgit cloneなどでbitbucket.orgサーバに接続する際の速度がgithubに比べて遅いように感じる。


手順

事前準備
練習としてローカルに"test-bb"というフォルダをつくり、gitで管理していることにしよう:
$ mkdir test-bb
$ cd test-bb
$ touch 1.txt
$ git init
$ git add
$ git commit -m "first commit"
Bitbucketサーバー側の初期設定
まずBitbucketでアカウントを作成。ここではユーザー名を"user-bb"とする。
次に、ssh-keyを登録する。ローカルで
$ ssh-keygen -t dsa
として、生成された~/.ssh/id_dsa.pubの中身をコピー。それを、ブラウザから"Bitbuket.org">"Manage account">"SSH keys">"Add key"と辿り、フィールドにペーストする。これでパスワードなしでサーバーへのssh接続が可能になった。
サーバーで空リポジトリの作成
"Bitbucket.org">"Create"で、新しいリポジトリを作成する。名前は何でも良いが"test"としよう。プライベートにしたければ"This is a private repository"にチェック。また"git"にチェックを入れて"Create repository"する。
この手順で生成された空レポジトリは
git@bitbucket.org:user-bb/test.git
としてアクセスできる(つまり"git"ユーザーで、"bitbucket.org"サーバーの"user-bb/test.git"にsshでアクセスする)。
ローカルのリポジトリをpushする
$ pwd
<home_dir>/test-bb
まずローカルリポジトリにbitbucket.orgで生成したリポジトリを"origin-bb"として登録する。
$ git remote add origin-bb git@bitbucket.org:user-bb/test.git
これをpushする。
$ git push origin-bb master
これでサーバーのリポジトリが更新された。
サーバーからリポジトリをcloneする
サーバーのリポジトリを取ってくるには
$ git clone git@bitbucket.org:user-bb/test.git
とすればよい。アドレスの打ち込みが面倒なときは、"~/.ssh/config"に次のように追加。
# ~/.ssh/config に追加
Host bb
  HostName bitbucket.org
  User git
こうすると、先のコマンドは
$ git clone bb:user-bb/test.git
で済む。

0 件のコメント:

コメントを投稿