1. Generate SSH key with passphrase (ssh-keygen)
  2. Get keychain to remember passphrase ssh-add --apple-use-keychain --apple-load-keychain ~/.ssh/id_ed25519
  3. Tell git to use SSH for signing: git config --global gpg.format ssh
  4. Tell git about the key git config --global user.signingkey ~/.ssh/id_ed25519.pub
  5. Auto sign commits git config --global commit.gpgsign true

References