Bitbucketの複数アカウントを使い分ける

複数のbitbucketのアカウントを使い分けている時にやっておくと良い設定。

例えば、会社でも私用でもbitbucketを使っていたとする。
認証鍵の設定などを.ssh/configに書き込んでいると思うが、bitbucket.orgをHostとして登録できるのは1つだけ。
なので、2つのアカウントを1つのmac上で使い分けるのに少し苦労した。

いろいろ調べて、こちらの記事にあるように、複数のbitbucket.orgの設定を別のHost名で登録して、.git/configを書き換えるという方法で対応した。

すると、.ssh/configはこんな記述になる。

Host bitbucket.org
 HostName    bitbucket.org
 Port    22
 User    git
 IdentityFile    ~/.ssh/bitbucket_work

Host private.bitbucket.org
 HostName    bitbucket.org
 Port    22
 User    git
 IdentityFile    ~/.ssh/bitbucket_private

あとは、リポジトリ.git/configのリモートの向き先を変更する。

$  git config -e

[remote "origin"]
  url = git@private.bitbucket.org:piruty/bucket.git # <- この行を修正
  fetch = +refs/heads/*:refs/remotes/origin/*

これで、git push origin masterとした時に指定した方のアカウントのリポジトリにプッシュしてくれる。