Possible to GPG sign commits by default?

I've got SourceTree (on Mac) set up with GPG and I can sign my commits fine by manually selecting "Sign commit" from the commit settings dropdown, but this is tedious when you do a lot of commits.  Is there an option hiding somewhere that I can use to force SourceTree to sign ALL of my commits, on either a global or repository level? (either would work for me)

I did try editing my global .gitconfig as well as my repository config with a new section:

[commit]

gpgsign = true

 

And this works fine when I git commit via the command line, but SourceTree isn't even able to commit at all with this settings since it tries to open /dev/tty for some reason (even though my pinentry program is set to pinentry-mac).

 

Any help would be appreciated!

3 answers

This widget could not be displayed.

To be able to sign commits by default, in your ~/.gitconfig, add:

[user]
    signingkey = ........
[commit]
    gpgsign = true
[gpg]
    program = /Applications/SourceTree.app/Contents/Resources/bin/stgpg.sh

Check stgpg.sh to see why this resolves the issue with /dev/tty.

Worked perfectly for me, thanks a LOT!

Brilliant! Thanks a lot!

Sorry for the stupid question but... in `signingkey` what should I put? The fingerprint?

You need to use the key ID; its 8 hexadecimal characters, which I think are (always?) the last 8 characters of the key fingerprint.

This widget could not be displayed.

Same problem

This widget could not be displayed.

On my Mac, with Homebrew installed gpg and pinentry-mac, the following git configuration was sufficient:

[user]
name = My Name
email = xxxxx@users.noreply.github.com
signingkey = XXXXXXX
[credential]
helper = osxkeychain
[commit]
gpgsign = true
[gpg]
program = /usr/local/bin/gpg 

 

Suggest an answer

Log in or Sign up to answer
Atlassian Summit 2018

Meet the community IRL

Atlassian Summit is an excellent opportunity for in-person support, training, and networking.

Learn more
Community showcase
Published May 30, 2018 in Sourcetree

Tip from the team: configuring Git or Mercurial in Sourcetree

Supported Platforms macOS Windows To make using Sourcetree as simple yet powerful as possible we embed (bundle) dependencies such as Git, Git LFS, and Mercurial. We strive to keep these...

711 views 1 3
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you