私は一行でこのコマンドを実行したいです。
git pull && [my passphrase]
どうやってするの?
これはまさにあなたが求めたものではなく、http(s)のためのものです。
https://user:pass@domain/repo
でレポジトリを複製することもできますが、それはあなたのユーザーを表示したり/たくさんの場所で合格したりするので、あまりお勧めできません...クレデンシャルヘルパーの使用例
git config credential.helper store
- 資格情報を無期限に保存します。git config credential.helper 'cache --timeout=3600'
- 60分間保存SSHベースのアクセスでは、必要に応じてSSHキーを提供するSSHエージェントを使用します。これには、コンピュータ上で鍵を生成し、公開鍵をリモートサーバーに格納し、秘密鍵を関連する鍵ストアに追加する必要があります。
コマンドラインでhttps接続の認証情報を指定する方法が1つ見つかりました。 git pullするための完全なURLを指定し、そこに資格情報を含めるだけです。
git pull https://username:[email protected]/my/repository
以前に認証情報を使ってリポジトリを複製する必要はありません。これは、認証情報が.git/config
で終わらないことを意味します。 (ただし、シェルがあなたを裏切らないようにし、コマンドラインを履歴ファイルに保存してください。)
質問に直接答えませんが、基本的に、リモートサーバーを起動するたびにパスワードを再入力しないようにする方法を探すときに、この質問を見つけました。
git
を使用すると、限られた時間内に資格情報をキャッシュできます。それはgit config
でカスタマイズ可能で、このページはそれをとてもよく説明しています:
https://help.github.com/articles/caching-your-github-password-in-git/#platform-linux
端末で、以下を実行します。
$ git config --global credential.helper cache
# Set git to use the credential memory cache
キャッシュタイムアウトをカスタマイズするには、次のようにします。
$ git config --global credential.helper 'cache --timeout=3600'
# Set the cache to timeout after 1 hour (setting is in seconds)
あなたの資格情報は要求された時間の間メモリに保存されます。
Gitクレデンシャルヘルパー "store"が 暗号化されていないパスワードを保存する する方法がGit 2.5以降で変更されていることに注意してください(2014年第2四半期)。
commit 17c7f4d by Junio C Hamano(gitster
) を参照してください。
credential-xdg
指定されている場合は、XDG構成ファイルの場所を尊重するために、信任状ヘルパーのサンプル "
store
"バックエンドを微調整します。
ドキュメントは今言う:
指定しない場合
- 信任状は
~/.git-credentials
および$XDG_CONFIG_HOME/git/credentials
から検索されます。- 認証情報が存在する場合は
~/.git-credentials
に書き込まれ、存在する場合は$XDG_CONFIG_HOME/git/credentials
に書き込まれます。