会社とプライベートで別々の複数のBitbucketアカウントを持っている時に、
同一端末から、sshでアクセスする方法です。
今回は仮に、bitbucket1とbitbucket2の2個を使用する事を想定しています。
SSHキーの作成
まず、SSHキーを作成します。
もし、既に自前のSSHがあるようであれば、自前の物を使ってください。
cd ~/.ssh
mkdir bitbucket1
ssh-keygen -t rsa -C ore-tec@example.com -f bitbucket1/id_rsa
mkdir bitbucket2
ssh-keygen -t rsa -C ore-tec@example.com -f bitbucket2/id_rsa
SSHキーの権限変更
sshきーの権限を変更します。
chmod 600 bitbucket1/id_rsa
chmod 600 bitbucket2/id_rsa
.ssh/configの設定
Host bitbucket.org1
HostName bitbucket.org
IdentityFile ~/.ssh/bitbucket1/id_rsa
User bitbucket1
Host bitbucket.org2
HostName bitbucket.org
IdentityFile ~/.ssh/bitbucket2/id_rsa
User bitbucket2
Bitbucketへのキーの追加
[アカウントの管理]画面 > SECURITY [SSH キー] をクリック
[鍵を追加]ボタンをクリック
上記のkeyの部分に以下でコピーしたモノをペーストします。
cat ~/.ssh/bitbucket1/id_rsa.pub | pbcopy
Labelも自分で認識しやすいモノを設定する。
同様にbitbucket2も別bitbuckeアカウントに鍵を追加します。
.git/configの設定
プロジェクトのルートに移動して.git/configを下記のように設定します。
my_project1の場合
[remote "origin"]
url = ssh://git@bitbucket.org1/bitbucket1/my_project1.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
my_project2の場合
[remote "origin"]
url = ssh://git@bitbucket.org2/bitbucket2/my_project2.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
重要なところは url = の部分で以下のように指定します。
ssh://git@[ssh/config のHOSTで設定したラベル]/[Bitbucketのユーザー名]/[リポジトリ名].git
0 件のコメント:
コメントを投稿