1. はじめに
GitHub や Bitbucket に gitコマンドで sshアクセスする際(git pull
や git push
など)、どのアカウントが使われるか確認する方法を紹介します。
複数のアカウントを使い分けている場合、現在どのアカウントで GitHub や Bitbucket にアクセスされるのかを確認することは非常に重要です。意図しないアカウントで git push
してしまうという事態は避けたいものです。
2. GitHub の場合
ターミナルで下のコマンドを実行します。
$ ssh -vT git@github.com
出力されたメッセージの中にある以下の赤字の部分が、使用されたアカウント名になります。
(省略)
Hi foo! You've successfully authenticated, but GitHub does not provide shell access.
(省略)
3. Bitbucket の場合
ターミナルで下のコマンドを実行します。
$ ssh -vT git@bitbucket.org
出力されたメッセージの中にある以下の赤字の部分が、使用されたアカウント名になります。
(省略)
logged in as foo
(省略)
注意(2022年2月)
この方法は使えなくなったようです。4. GitLab の場合
ターミナルで下のコマンドを実行します。
$ ssh -vT git@gitlab.com
出力されたメッセージの中にある以下の赤字の部分が、使用されたアカウント名になります。
(省略)
Welcome to GitLab, foo!
(省略)
5. その他のメモ
- ssh-agent を使っている場合、「その時使いたい鍵」のみを ssh-add しておくと調査がラクになります。複数の鍵を ssh-agent に登録していると、どれが使われるか意識しなければいけません。
- ssh の configファイル(通常は
~/.ssh/config
)に、「Host
」キーワードを使って複数のサーバーに対する設定を書き分けている場合、「IdentifyFile
」ディレクティブで複数の鍵が該当するような記述になっていないか注意する必要があります。なるべく1つの鍵のみが該当する書き方にした方が分かりやすくてよいです。