git/sshを実行するたびにパスフレーズを入力する必要がないように構成できますgit pullか?リポジトリはgithub上のプライベートなものであることに注意してください。
または、代わりに、プライベートGithubリポジトリからコードのデプロイを自動化するためのベストプラクティスは何でしょうか?
追加詳細: FedoraベースのパブリックAMIを実行するEC2インスタンス。
git/sshを実行するたびにパスフレーズを入力する必要がないように構成できますgit pullか?リポジトリはgithub上のプライベートなものであることに注意してください。
または、代わりに、プライベートGithubリポジトリからコードのデプロイを自動化するためのベストプラクティスは何でしょうか?
追加詳細: FedoraベースのパブリックAMIを実行するEC2インスタンス。
回答:
このリンクをご覧くださいhttps://help.github.com/articles/working-with-ssh-key-passphrases/
しかし、キーを使用するたびに長いパスフレーズを入力したくありません。
私もそうではないです!ありがたいことに、
ssh-agentパスフレーズを安全に保存できるように呼ばれる気の利いた小さなツール があり、再入力する必要はありません。OSX Leopard以降を使用している場合は、キーをシステムのキーチェーンに保存して、さらに使いやすくすることができます。ほとんどのLinuxインストールでは、ログイン時にssh-agentが自動的に起動します。
ssh-agent次の場所に
ここで説明するように、パスワードキャッシュを有効にしました。
https://help.github.com/articles/caching-your-github-password-in-git/#platform-linux
1か月間パスワードをキャッシュするには:
git config --global credential.helper 'cache --timeout=2628000'
これを試して:
git config credential.helper store
パスワードを一度入力する必要があります。その後、パスワードはルート内のフォルダに保存されます。
コメントが指摘したように、これはSSHパスワードでは機能せず、HTTPSパスワードでのみ機能します。
あなたの状況は修正されましたが、私にとっては複数のキーが ~/.ssh/
この問題を解決するには、というファイルを作成し~/.ssh/configて次の行を追加する必要がありました。
IdentityFile ~/.ssh/my_key2_rsa
~/.ssh/my_key2_rsa私の鍵はどこですか。
id_rsa とid_rsa.pubのファイルはGitがそれを認識することはない理由であるカスタム名を持っています。参照:linux.die.net/man/5/ssh_config
なぜ誰もこれをまだ報告していないのか、私にはわかりません。ただし、最も簡単な方法はAddKeysToAgent yes、.ssh / configファイルの先頭に1行を追加することです。もちろん、ssh-agent事前に実行しておく必要があります。実行されていない場合(ssh-agentターミナルのコマンドで確認)、単に実行しますeval $(ssh-agent)
これが機能することを確認できます。これは、多数のサブモジュールを使用するプロジェクトで、複製されるサブモジュールごとに、sshパスフレーズを入力する必要があったためです。上記のトリックの後、私はもうそれをする必要はありません。
ソリューションのソースは/ubuntu/362280/enter-ssh-passphrase-once/853578#853578です。