証明書などを生成する方法はありますか?毎回認証することなく、私のprodサーバーがgithubリポジトリからプルできるようになっていますか?
これが Deploy Keys の目的です。
このヘルプ記事では、GitHubがサポートするデプロイメント認証方法について説明し、それらの間での決定に役立ついくつかの指針を示しています。
私の限られた経験では、SSHキーの展開はおそらくセットアップが最も簡単です。
アクセストークンを作成 して、それをユーザー名として使用できます(パスワードなし)。
アクセストークンを取得したら、リポジトリのクローンを作成します。
git clone https://<your-access-token>@github.com/username/repo.git
その後、毎回認証することなくプルできます。
これは最も簡単な方法ですが、トークンのプレーンテキストを.git/configに保存します。セキュリティを向上させるには、 (パスワードキャッシュの設定 を使用して、通常どおりにhttpsのクローンを作成します。
git clone https://github.com/username/repo.git
サーバーからリポジトリへのアクセスを削除する場合は、 アプリケーション設定 のアクセストークンを削除します。
デプロイ環境では、sshよりhttpsを使用することも好みます。 sshで処理するための十分なアクセス権限がない場合もありますが、安価なホスティングサービスでもgithubへのhttpsアクセスが利用できます。
sshキーを生成
cd ~/.ssh
ssh-keygen -t rsa -C "your-email-address"
touch config
設定に貼り付け
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/YOUR_KEY
公開キーをgithubデプロイメントキー設定に貼り付けます
cat YOUR_KEY.pub
httpからsshにリモートを設定
git remote set-url Origin ssh://[email protected]/USERNAME/REPOSITORY.git
これは、資格情報のキャッシュと.netrcファイルを使用することで実現できると思います。 これを確認してください