web-dev-qa-db-ja.com

sshを使用してパスワードを要求しないようにTortoiseGitを設定する方法

提供されたsshキー(PuttyGenを使用して作成)をgit/tortoisegitで使用するのに問題があります。コマンドプロンプトでpermission deniedエラー、TortoiseGit UIでパスワードの入力を求められます。私は this SO question を試しましたが、前述のように、PuttyGenで作成し、Pageantをキーをロードして実行し、TortoisePlinkを使用するように構成しました。

次に、 this SO question を見つけ、gitディレクトリのssh、TortoiseHG(Bitbucket/Mercurialに使用)のTortoisePlinkを使用しようとしました。 、TortoiseGitでローカルのTortoisePlinkをすでに試していました。

ああ、私は自分のGitアカウントとTortoiseGitのGit-> Remoteセクションで自分のppkを設定しました

だから、私は何が欠けていますか?

19
Justin Pihony

OriginのURLを確認してください。

プロジェクトフォルダを右クリックしますTortoiseGit-> Settings-> Git-> Remoteを選択し、Originエントリを選択します。

URLがssh://で始まり、秘密鍵がロードされていることを確認してください。

URLがhttps://で始まる場合は、毎回パスワードの入力を求められます。

お役に立てれば。

14
CGRobinson

Github/tortoisegitでもこれを動作させることができませんでした。 Linuxのコマンドラインからgitを使用すると問題なく動作しました。次に、ここで説明するように、ユーザー名/パスワードを使用することにしました。

http://www.programmoria.com/2012/02/saving-tortoisegit-password.html

と他の場所。これは実際のソリューション(申し訳ありません)ではありませんが、同じことを実現する回避策です。ユーザー名/パスワードを入力する必要のない自動認証です。 _netrcファイルは、コンピューターのどこかに保存される秘密鍵と同じくらい安全/安全ではないので、許容できる解決策だと思います。もちろん、これについてのコメントは大歓迎です。

4
Sander P

認証に関しては、一部のGitサーバーは直観に反します(IMHO)。たとえば、 Github docs say:

すべての接続は「git」ユーザーとして行う必要があります。

したがって、ssh://<yourname>@github.com...に接続する代わりに、ssh://[email protected]...に接続する必要があります。

Push操作の完了後にTortoiseGitがSuccessを表示するようになりました。

4
O. R. Mapper

OpenSSHサーバーのアカウントは、公開鍵で認証する必要があることを知っていますか?

PuTTyGenを使用してキーをロードします。 「OpenSSHauthorized_keysファイルに貼り付けるための公開鍵」の下に読み取り専用のテキスト領域が表示されます。そこにあるものをコピーします。

PuTTYを使用してSSHサーバーにSSH接続します。 ~/.ssh/authorized_keysファイルをエディターで開き、コピーしたテキストを新しい行に貼り付けて保存します。 ~/.sshディレクトリはまだ存在していない可能性があります。その場合は、そのファイルを編集する前にmkdir ~/.sshを実行してください。

1
Attila Szeremi

V1.8.4でも同じ問題に直面していたので、sshクライアントをplinkに切り替えて、正常に動作するようになりました。 TortoiseGit設定->ネットワーク-> SSHクライアント

plinkは、標準のPuTTYパッケージでpeagentやその他のグッズと一緒に配布されます

どうやらTortoiseGitの特定のバージョン(特にTortoisePlink)にバグがあります この回答を参照

1
mzzzzb

私はgit2.7とtortoisegit1.8.16を使用しています。これがパスワードを必要としないようにするために私がしたことであり、私の場合はうまくいきました

プロジェクトフォルダを右クリックします。TortoiseGit->設定Git-> Remoteを選択し、Originエントリを選択します。URLを https:// github ...からssh:// git @ github ...に変更します。

0
Tue

Tortoise 2.2.0.0を使用するには、いくつかのことを行う必要があります。リモートタブで、既存のhttp(s)Originを削除するか、ssh://を使用してsshのものの[Push Default]チェックボックスをオンにして、Tortoiseがプッシュに使用するように秒を追加する必要があります。デフォルト(およびプルの場合はhttpsオリジン)。

Sshのものだけがキーを指定する必要があり、プッシュすると、デフォルトで宛先として新しいssh Originになり、ユーザー名とパスワードを要求されないはずです。

明らかにあなたはあなたのURLにどのユーザーがいるのかを知る必要があります。たとえば、Visual Studio Team Servicesでは、これはVSTSアカウントの名前です(アカウント所有者ではありません!)。ポート番号も必要になる場合があります。

私が最初からセットアップしたのはそれだけで、うまくいきました。

0
Lukos