MacとVS CodeでGitHubの複数アカウントを確実に切り替えて使う方法
目次
こんにちは。
GitHubでコード管理をしているのですが、アカウントが仕事用かプライベート用か、はたまたプライベートでもアプリケーションによっていくつかにアカウントを分けていることありますよね。
私も3つほどアカウントを切り替えて使っています。(気づいたら増えてました)
今回は、MacとVS Codeの開発環境におけるGitHubアカウント切り替えの手順を、忘れないようにまとめておこうと思います。
この方法はCLI操作や環境変数ファイルを書き換えたりせずGUIベースで行うので、難しいことを考えずに安心して切り替えできます。
少し面倒かもしれませんが、慣れれば1分程度で完了します。
前提
私の開発環境は以下の通りです。
OS
Mac OS Catallina 10.15
コード開発環境
VS Code (Visual Studio Code) 1.55
想定しているユースケース
今回想定しているケースは、「今まで開発していたアプリケーションと別のアカウントで開発しているアプリケーションを、同じマシンからgit pushしたい」、という状況です。
このとき、アカウントを切り替えずにgit pushすると、元のアカウントでは別のアカウントのリポジトリのアクセス権限がないため、リモートブランチにpushできません。
そこで、VS Codeでアクセスするアカウントの切り替えが必要になります。
切り替えるには、以下の手順で操作します。
VS Codeを閉じる
セッション情報を読み込み直すため、一旦アプリケーションを終了します。
MacのキーチェーンアクセスでGitHubのパスワードを消す
キーチェーンアクセスはMacのアプリケーションの中にある鍵が3つぶら下がってるアイコンです。デフォルトではその他フォルダの中に入っていると思います。
キーチェーンアクセスを開いたら、Window右上の検索ボックスでgithubと入力し検索します。
以下の2つがヒットします。
vscodevscode.github-authenticationというアプリケーションパスワードgithub.comというインターネットパスワード
以上の2つを、キーボードのDeleteキー(Enterの上のやつ)か、右クリックメニューで削除します。
デフォルト設定のwebブラウザを開き、使いたい方のアカウントでGitHubにログインする
デフォルトブラウザを開いて、GitHubにサインインします。
ここでデフォルトブラウザである理由は、この後の手順でVS Codeがブラウザを起動するときに勝手に選ばれてしまうためです。
VS Codeでgit pushする
VS Codeを開いて開発しているアプリケーションを更新(Commit)したらgit pushします。
このとき、先程の手順でキーチェーンアクセスに保存されていたパスワードが削除されているため、ブラウザでGitHubが立ち上がります。
VS CodeとGitHubを認証トークンで連携する
GitHubが開いたら、ブラウザ上でContinueを押すと認証トークンが生成されます。
コピーすることも可能ですが、Chromeの場合はVS Codeを開くか聞いてくれたので、コピペ不要でした。
VS Codeが開いたら、拡張機能から「この URI を開くことを許可しますか?」と問われるので許可します。
これで、無事に切り替えたアカウントのリポジトリにgit pushできるようになりました。
まとめ
以上、MacとVS Codeの開発環境でアカウントを切り替えてgit pushする手順でした。
簡易版として手順をまとめると、以下のようになります。
- VS Codeを閉じる
- Macのキーチェーンアクセスで"github"を検索し関連する2つのパスワードを消す
- デフォルトブラウザを開き、使いたい方のGitHubアカウントにサインインする
- VS Codeを開いて
git pushする - ブラウザでGitHubが立ち上がるのでContinueを押して認証トークンを生成する
- VS Codeが開き拡張機能でGitHubの許可を問われるので、許可する
以上です。
ご参考にどうぞ。
