JAEN

Git

git commit -S / tag -s

安全署名付きコミット

git commit -S -m '<msg>'

GPG/SSH鍵でコミット・タグへ署名し、改ざん不能な作者証明を付ける。ホスティング上のVerifiedバッジの正体。

実行例

  • git config --global gpg.format ssh && git config --global user.signingkey ~/.ssh/id_ed25519.pubSSH鍵で署名する設定
  • git config --global commit.gpgsign trueすべてのコミットに自動で署名する
  • git log --show-signature -1直前のコミットの署名を検証
  • git tag -s v1.0 -m "release 1.0" git tag -v v1.0署名付きタグを作って検証
  • git config --global gpg.ssh.allowedSignersFile ~/.ssh/allowed_signersSSH 署名を手元で検証するときに必要な設定

書式

git commit -S / git tag -s / git config commit.gpgsign true

押さえておくこと

  • GitHub や GitLab で Verified にするには、使った鍵を「署名用の鍵」としてアカウントに登録し、コミットのメールアドレスをアカウントのものと一致させます。
  • SSH 鍵での署名は Git 2.34 以降で使えます。
  • rebase や --amend で作り直したコミットは、署名もやり直しになります。

うまくいかないとき

  • error: gpg failed to sign the data は、GPG がパスフレーズを聞けないときに出ます。export GPG_TTY=$(tty) を設定します。

実行前の注意

署名の付与のみ。

関連コマンド

圏外の現場でも同じ内容が引けます

このサイトの全コマンドを端末の中に。アプリ版はさらに632件を加えた1,510コマンドと、120の対処フローを収録しています。通信なしで検索できます。インストール無料・広告なし(一部は買い切り)。

App Storeで無料インストール