git push / pullを行うときにパスワードプロンプトを無効にするにはどうすればよいですか?


34

私がするたびにpush、および/またはpull(Linuxの場合)端末からは、私はパスワードを入力する必要があります。パスワードなしでプルおよび/またはプッシュするようにこれを削除するにはどうすればよいですか?


5
リポジトリアドレスで使用されるプロトコルは何ですか?ssh?https?
VonC

回答:


23

パスワードなしの認証用の秘密/公開キーペアを生成します。

Linuxの場合、キーはに保存され~/.sshます。

すでに内のファイルがある場合は~/.sshその名前の者id_rsaとしid_rsa.pub、その後、あなたはすでに鍵のペアを持っています。公開キーの内容(つまりid_rsa.pub)をGitリポジトリの〜/ .ssh / authorized_keysファイルに追加します。

$ scp ~/.ssh/id_rsa.pub user@git.repo:id_rsa.tmp
$ ssh user@git.repo
$ cat id_rsa.tmp >> .ssh/authorized_keys

キーペアがない場合は、

$ ssh-keygen -t rsa

詳細な手順については、これをお読みください:http : //inchoo.net/tools-frameworks/how-to-generate-ssh-keys-for-git-authorization/


@slhckああ、そうは思わなかった!ただし、詳細な指示を投稿する前に、OS whirlwinが使用していることを知っておくとよいでしょう。
ジン

ポインターをありがとう。それに応じて質問を更新しました!
whirlwin

1
最初のコマンドを実行すると、次のメッセージが表示されます。sshを使用してgit:// URLを複製しているようです。core.gitProxy構成オプションとGIT_PROXY_COMMAND環境変数が設定されていないことを確認してください。接続が失われました
-MultiformeIngegno

25

走る

git config credential.helperストア

これにより、ルート内のフォルダーに資格情報が保存されます。このコマンドの後にgit pull / pushを実行し、初めてユーザー名/ pwdを指定する必要があります。これを投稿すると、user / pwdのプロンプトは表示されません。https://git-scm.com/docs/git-credential-storeの詳細


4
これは、この質問の正しい答えとして選択する必要があります。IMO、OPは、ソリューションにhttps切り替えるのではなく、ユーザー名/パスワードを何度も入力する必要がないようにするためのソリューションについて質問したかったのsshです。この回答では1+。
ジャングエン

1
store credential helperはパスワードを暗号化せずにディスクに保存することに注意してください。
0xc0de

6

パスフレーズ変更して、空の文字列に置き換えることもできます。
ssh-keygen -p


3
これは非常に間違っていませんか?これ以上のセキュリティはありませんので
-titus

3
ありがとうございました。これは、SSHキーのセットアップはあるが、パスフレーズを入力する必要がある理由がわからない場合の修正です。
コリーダニエルソン14

ssh-agentを使用する方がより安全な代替手段です。superuser.com/questions/426749/ssh-agent-and-ssh-add
ジェイR.レン

1

新しいブランチを作成した後、プルするときにユーザー名とパスワードを入力する必要がありました。次に、sshアドレス(関連するリポジトリサイトにある)でブランチを再複製する問題を解決します。

例えば:

git clone git@github.com:sshare/GLE.git
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.