GitLabをTortoiseGitで使うとパスワードを要求される、保存と省略方法

Git

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

今回、パスワードを保存、省略する方法についてまとめてみました。

スポンサーリンク
スポンサーリンク

GitLabの導入について

GitLabのサーバーへの導入方法については以下の記事に書きました。

CentOS 7にGitHubライクなGitLabを2分でインストールしてみた
GitのWebインターフェースを探している中で、GitWeb、Ginatraを試したのですが、イマイチでした。 ...

GitLabのユーザー登録については以下の記事に書きました。

GitLabでGUI画面からでなく、python-gitlabを使ってバルクでユーザー登録する方法
GitLabのセットアップが以下の記事の通り完了しました。 その後、GitLabでGU...

GitLabとWordPressとの共存については以下の記事に書きました。

GitLabをサブディレクトリ(Subdirectory)でインストールしてWordPressと共存させる方法
GitLabのGitLab CE Omnibus Packagesを使うと、ホントに簡単にGitLabをインストール...

その後、クライアントとして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 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に変更した。

Gitについてのおすすめの本

↓Gitについてのおすすめの本はコチラ

Git