Repository navigation
Finish SSH signing setup and add git defaults - #7
Merged
Merged
Conversation
setup.sh turned on SSH commit signing but set no allowed signers file, so git log --show-signature printed an error instead of verifying. It now writes ~/.ssh/allowed_signers (from your git email and signing key) and points gpg.ssh.allowedSignersFile at it, unless you already have one. It also appends a Host * block to ~/.ssh/config with UseKeychain and AddKeysToAgent, so the key passphrase is asked for once, unless the file already sets UseKeychain. dotfiles/gitconfig gains newer defaults: histogram diffs, rebase autoStash and updateRefs, push.followTags, commit.verbose, branches sorted by recent commit, version-sorted tags, columns, and help.autocorrect=prompt. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #6 so the diff stays clean; GitHub will retarget it to
mainonce that merges.setup.shturned on SSH commit signing but never set an allowed signers file, sogit log --show-signatureprinted an error instead of verifying the signature it had just made. And without~/.ssh/config, the key's passphrase is asked for again and again.~/.ssh/allowed_signersfrom your git email and signing key, and pointsgpg.ssh.allowedSignersFileat it. If you already have one, it leaves it alone and says whether your key is in it; ifuser.emailisn't set yet, it says to set it and re-run.Host *block withUseKeychainandAddKeysToAgentto~/.ssh/config, behindIgnoreUnknownso non-Apple OpenSSH doesn't choke on it. Creates~/.sshas 700 and the file as 600 when they're missing, and skips the whole step if the file already setsUseKeychain.dotfiles/gitconfiggains newer defaults:diff.algorithm=histogram,rebase.autoStash,rebase.updateRefs,push.followTags,commit.verbose,branch.sort=-committerdate,tag.sort=version:refname,column.ui=autoandhelp.autocorrect=prompt.~/.ssh/configand~/.ssh/allowed_signerstoo.Tested against throwaway
HOMEdirectories: a real commit verifies asGood "git" signature, a second run reports everything already set up and changes nothing, and the key-without-email and no-key-at-all paths both do the right thing.🤖 Generated with Claude Code