36
48

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Windows] Visual Studio CodeでGithub・Gitlab・Bitbucketそれぞれにssh接続する

Last updated at Posted at 2018-02-24

この投稿に至るまでの経緯

  • Visual Studio CodeでGithubにHTTPS接続していたがssh接続に切替
  • 過去の記事を参照してPuttyでssh接続
  • 後日、Gitlabでもssh接続を追加。Gitlabにgit clone時に途中パスワード聞かれた状態でフリーズした
  • 複数ssh接続する際に問題が出た際にWin32-OpenSSHをsshで使うとそれぞれに接続できた

以下、備忘録として各種インストール・設定を記載

各種環境

  • windows 10
  • Visual Studio Code 1.20.1
  • Win32-OpenSSH v1.0.0.0-Beta
  • Git for Windows 2.16.2

各種インストール・設定

1. Git for Windows

インストール時の設定

g1.PNG
g2.PNG
g3.PNG
g4.PNG
g5.PNG
g6.PNG
g7.PNG
g8.PNG
g9.PNG

2. Win32-OpenSSH

  • OpenSSH-Win64.zipをダウンロード
  • 解凍後、フォルダ名をOpenSSHとして「C:\」にコピー

3. 環境変数追加

  • 「コントロールパネル」→「システム」→「システムの詳細設定」→「環境変数」選択
  • システム環境変数の「Path」に「C:\OpenSSH」を追加
  • システム環境変数に新規で変数名「GIT_SSH」、変数値「C:\OpenSSH\ssh.exe」を追加

※、2020年6月25日追記

OpenSSHはWindows10では「%SYSTEMROOT%\System32\OpenSSH」にあるため、Win32-OpenSSHの追加は不要となっています。

4. git config

powershell
※、名前とメールを設定
git config --global user.name "[your_name]"
git config --global user.email [your_mail_address]@[your_mail_domain]

5. ssh-keygen

powershell
cd ~/
cd .ssh
.sshがない場合は作成

※、各サービスで登録したメールを設定
ssh-keygen -t rsa -f id_rsa_for_github -b 4096 -C "[your_mail_address]@[your_mail_domain]"
ssh-keygen -t rsa -f id_rsa_for_gitlab -b 4096 -C "[your_mail_address]@[your_mail_domain]"
ssh-keygen -t rsa -f id_rsa_for_bitbucket -b 4096 -C "[your_mail_address]@[your_mail_domain]"

※、ここではパスワードを入れずにEnterのみ入力して終了
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

6. config追加

.sshに「config」ファイルを作成。以下の内容を設定

config
Host github.com
  User git
  HostName github.com
  IdentityFile ~/.ssh/id_rsa_for_github
  IdentitiesOnly yes

Host gitlab.com
  User git
  Hostname gitlab.com
  IdentityFile ~/.ssh/id_rsa_for_gitlab
  IdentitiesOnly yes

Host bitbucket.org
  User git
  Port 22
  Hostname bitbucket.org
  IdentityFile ~/.ssh/id_rsa_for_bitbucket
  IdentitiesOnly yes

7. ssh公開鍵の登録(Github)

powershell
cat id_rsa_for_github.pub | clip

上記コマンドで公開鍵コピー後、以下の公式の手順に従ってキーを設定
github.PNG

8. ssh公開鍵の登録(Gitlab)

powershell
cat id_rsa_for_gitlab.pub | clip

上記コマンドで公開鍵コピー後、以下の公式の手順に従ってキーを設定
gitlab.PNG

9. ssh公開鍵の登録(Bitbucket)

powershell
cat id_rsa_for_bitbucket.pub | clip

上記コマンドで公開鍵コピー後、以下の公式の手順に従ってキーを設定
gitbucket.PNG

10. sshでの接続確認

powershell
ssh -T github.com
ssh -T gitlab.com
ssh -T bitbucket.org

まとめ

  • Windows環境でgit使用時にssh接続できなかった場合はWin32-OpenSSHを使う
  • GIT_SSHを環境変数で設定する
  • .sshにconfigファイルのみで動くはずなのに、動かなかった原因は未調査
36
48
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
48

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?