Gitではユーザ名とメールアドレスなどを設定として保存しておきます。しかし、企業と個人でアカウントを切り替えている人にとっては不便です。間違って会社のアカウントで登録してしまって、慌てて削除したなんて経験がある人がいるかも知れません。 そこで使ってみたいのがGit Identity Managerです。複数のアカウント設定を簡単に切り替えられるソフトウェアです。

Git Identity Managerの使い方

アカウントの追加はaddを使います。名前、メールアドレス、SSHキーのパスはセットです。

git idm add jcool --name "Joe Cool" --email joe@example.com --key ~/.ssh/id_rsa

登録したら、listで登録内容を確認できます。

$ git idm list
personal
    name=Atsushi
    email=atsushi@moongift.jp
    sshkey=~/.ssh/id_rsa
    sshcommand=ssh -i ~/.ssh/id_rsa -o IdentitiesOnly=yes -F /dev/null
work
    name=Atsushi
    email=atsushi@moongift.jp
    sshkey=~/.ssh/id_rsa
    sshcommand=ssh -i ~/.ssh/id_rsa -o IdentitiesOnly=yes -F /dev/null

使う時には use を使います。

git idm use work

そうすると設定が変わっているのが分かります。

$ git config -l
credential.helper=osxkeychain
user.name=Atsushi
user.email=moongift@gmail.com
user.activeidm=personal

すぐに戻せます。

$ git config -l
credential.helper=osxkeychain
user.name=Atsushi
user.email=atsushi@moongift.jp
user.activeidm=work

企業で開発を行っている時に、アカウントをその企業のものとするケースはよくあります。しかし個人の開発もGitで行っていたら、その切り替えは手間に感じるでしょう。Git Identity Managerならば一瞬で切り替えられるのでとても簡単です。

Git Identity ManagerはShellスクリプト製のオープンソース・ソフトウェア(MIT License)です。

samrocketman/git-identity-manager: Git identity manager. It allows you to switch between git identities for user, name, and SSH private key used for authoring and publishing git commits.