Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

IntelliJ fails to commit changes when attempting to sign commit (GPG)

I have been working on setting up my development environment, so when I create a commit it is automatically signed by GPG. I followed Githubs documentation on the matter here: https://help.github.com/categories/gpg/.

I am attempting to use IntelliJ's git interface to create a commit, but it always fails with this error.

gpg: cannot open `/dev/tty`: Device not configured
error: gpg failed to sign the data
fatal: failed to write commit object

I do not encounter this error when using git directly from my terminal, I discovered an issue where someone had a similar problem (with Source Tree) and mentioned something about the GUI not popping up to enter passphrase. I'm assuming this is similar to that issue.

How can I go about fixing this issue?

like image 392
Ryan W Avatar asked Apr 11 '16 19:04

Ryan W


3 Answers

Configure GPG to allow it to be called from a program remotely by adding the following to your gpg.conf:

no-tty

like image 109
phedoreanu Avatar answered Sep 23 '22 02:09

phedoreanu


You need to add the following options in your gpg.conf

no-tty

use-agent

like image 31
Giacomo Marciani Avatar answered Sep 23 '22 02:09

Giacomo Marciani


I discovered the cause of this yesterday, and figured I'd post an answer for anyone else who might look at this. It was caused because when it tried to sign the commit, it wanted to open a window asking for my passphrase.

This was the tutorial I followed (specifically the bottom part so it wouldn't ask me in the future for the passphrase). https://github.com/pstadler/keybase-gpg-github

Note that the tutorial is for macOS only.

like image 40
Ryan W Avatar answered Sep 22 '22 02:09

Ryan W