GitLabをTortoiseGitで使うとパスワードを要求される

シェアする

  • このエントリーをはてなブックマークに追加

GitLabを導入して使い始めたのですが、クライアントとしてTortoiseGitを使うとパスワードの要求画面が表示されてしまいます。

スポンサードリンク

GitLabの導入について

GitLabのサーバーへの導入方法については以下の記事に書きました。
CentOS 7にGitHubライクなGitLabを2分でインストールしてみた

GitLabのユーザー登録については以下の記事に書きました。
GitLabでGUI画面からでなく、python-gitlabを使ってバルクでユーザー登録する方法

GitLabとWordPressとの共存については以下の記事に書きました。
GitLabをサブディレクトリ(Subdirectory)でインストールしてWordPressと共存させる

その後、クライアントとしてTortoiseGitを使うと、サーバーに接続するたびに以下のようにTortoiseGitPlinkからパスワードの要求画面が表示されてしまいます。

image

ちょっと困った。GitLabにsshのキーを登録しているとパスワードは不要なはずなんですが。。
このまま、Cancelすると、以下のエラー画面が表示されます。

Cloning into ********
Access denied.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
gitは正常に終了しませんでした (終了コード 128)

スポンサードリンク

調査してみた

まず、ssh -vTを使ってsshが正しく接続できるか確かめます。

問題ないようです。

このまま、試しにコマンドラインから、以下のコマンドでgit cloneしてみると、なんとちゃんとclone出来ました。

$ git clone git@aa.bb.cc:root/(リポジトリ名)

判明したことは以下のことです。

  • Git Bashのコマンドラインからはパスワード不要
  • TortoiseGitからは、TortoiseGitPlinkのパスワード要求画面が表示される(ただしGitLabではここでパスワードを入力する仕様ではないです)

スポンサードリンク

TortoiseGitのsshクライアントを変更

パソコンを再起動しても事象は変わりません。
少なくともGit Bashで問題ないのでTortoiseGitに何らかの問題があるはずです。
キャッシュなのか、なんなのか原因が分からないのでTortoiseGitの設定を色々と見てみます。

おや?これsshのクライアントとしてTortoiseGitPlinkを使っているじゃん。。。?
ちょっと変えてみよう。

という訳で、以下の通りsshクライアントをTortoiseGitPlink.exeからGit Bash付属のssh.exeに変更しました。

C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe

C:\Program Files (x86)\Git\bin\ssh.exe

image

これで試してみると、ビンゴ!

パスワードの要求画面が表示されなくなりました。

教訓

今回の事象の教訓。

  • ダイアログを誰が出しているか見定める。今回はTortoiseGitPlink.exeが表示している。
  • いろいろと試すべし。今回は、TortoiseGitPlink.exeからssh.exeに変更した。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です