SSH鍵を使った署名つきコミット
Categories:
GitHubでは、GPG鍵だけでなくSSH鍵を使ってコミットに署名することができます。ここでは、サーバに登録済みのSSH鍵(authorized_keys
)を利用して signed commit を行う手順を紹介します。
参考: GitHub公式ガイド
1. SSH鍵をGitHubに登録する
まず、利用するSSH公開鍵をGitHubアカウントに登録します。
(すでにリポジトリへの接続用にSSH鍵を登録している場合は、この手順を省略できます。)
手順: GitHub Docs - Adding a new SSH key to your GitHub account
2. Gitに署名用のSSH鍵を設定する
Gitの署名方式をSSHに切り替え、署名に使う鍵を指定します。
サーバ上の ~/.ssh/authorized_keys
を利用する想定です。
git config --global gpg.format ssh
git config --global user.signingkey ~/.ssh/authorized_keys
詳細: GitHub Docs - Telling Git about your SSH key
3. 署名付きコミットを作成する
署名をつけてコミットするには、-S
オプションを利用します。
git commit -S -m "YOUR_COMMIT_MESSAGE"
参考: GitHub Docs - Signing commits
4. デフォルトで署名を有効にする(任意)
毎回 -S
を指定するのが面倒な場合、デフォルトで署名するように設定できます。
git config --global commit.gpgsign true