質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.37%

VScodeを使ってsshでgitlabへアクセスする方法がうまくいきません。

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 7,460

LineLine

score 32

タイトルの通りです。環境を下記します。

クライアントPC:windows 10
ssh:git GUI & OpenSSH-Win64
エディタ:VScode 1.0.0

gitサーバー:CentOS 7系
サービス:gitlab 7.13.5

基本はsourcetreeで行っていて、こっちでは問題なく動くのですが、VScodeになると下記のようなエラーを吐きます。
ユーザー/.ssh/に秘密鍵。gitlabへは公開鍵の登録をしました。git GUIとOpenSSH-Win64で行ってみましたが、両方ともダメでした。

権限回りの雰囲気がしなくもないんですが、そもそもどこを変えればいいかも判断できていません。

詳しい方がおりましたらなにとぞご教授いただければと思います。


git pull
Host key verification failed.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.


  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

0

SourceTreeでうまく接続できるということは、使用している鍵はPuTTYgenで作成した鍵になりますでしょうか。PuTTYgenで作成してPuTTYやPagentで使う鍵の形式と、OpenSSHで使う鍵の形式は異なるため、変換が必要になります。

こちらの手順でOpenSSH形式に変換した秘密鍵を使って接続を試してみてはいかがでしょうか。

秘密鍵の変換 - PuTTYgenで公開鍵/秘密鍵を作成する - WinSCP Wiki - WinSCP - OSDN

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/05/27 14:57

    いえ。git GUIで作って試してダメで、OpenSSH-Win64でも作って試してダメでとそれぞれで行いました。
    おっしゃられた方法を試しました。
    すでにSourceTreeが使っている秘密鍵をOpenSSHにインポートして「C:\Users\usernamae\.ssh」に配置して試してみましたが、ダメでした。
    しかし今度はVCcodeは「Git の操作を実行しているときに問題が発生しました。出力を確認するか、コンソールを使…」と吐くのですが、コンソールに何もログがでなくなりました。しかしSourceTreeで確認するとプッシュはできていませんでした。
    ちょっと原因がわからないのですがtnanbaさんの環境ではうまく動いていますでしょうか?

    キャンセル

  • 2016/05/28 10:52

    以下の手順でVScodeやgit-guiからGitLabのリポジトリを操作できました。

    1. SourceTreeで鍵を生成
    2. SourceTreeを使ってGitLabからclone
    3. puttygenを使ってOpenSSH形式に鍵を変換する
    4. ~/.ssh/configにGitLab接続用設定を追加
    5. VSCodeで作業フォルダからpush可能

    私はcygwinを使っているので正確に同じ状況ではないかもしれませんが、`~/.ssh/config`ファイルにGitLabへの接続設定を追加すればいけるのではないかと思います。

    GitLabへsshで接続する場合のURLは`ssh://git@gitlab.example.com/tnanba/repo.git`のような形になっていますが、この場合`~/.ssh/config'に以下の設定を追加します。

    ```
    Host gitlab.example.com
    User git
    IdentityFile ~/.ssh/sourcetree.key ← OpenSSH形式に変換した鍵ファイル名
    ```

    私の環境ではこれを追加することによってVSCodeやgit-guiから操作できるようになりました。

    ただ鍵ファイル名が`~/.ssh/id_rsa'であれば設定を追加しなくてもデフォルトで使われる気もするので別の原因かもしれません。

    キャンセル

  • 2016/06/06 15:18

    ありがとうございます。
    いろいろ試して自己解決しました。
    でも参考になりましたのでベストアンサーとさせていただきます。

    キャンセル

0

  1. SourceTreeで鍵を生成
  2. SourceTreeを使ってGitLabからclone
  3. puttygenを使ってOpenSSH形式に鍵を変換する
  4. ~/.ssh/configにGitLab接続用設定を追加
  5. VSCodeで作業フォルダからpush可能

をパスフレーズなしで生成したら行きました。
どうやらパスフレーズありだとどうしてもVScodeさんが読んでくれらならいいです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.37%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る