Re: I lost my commit signature

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jeff King venit, vidit, dixit 14.06.2016 11:41:
> On Tue, Jun 14, 2016 at 04:39:38PM +0800, ZhenTian wrote:
> 
>> I want to set gpg -v to pgp.program, but if I set it, it can't call gpg:
>> ```
>> error: cannot run gpg -v: No such file or directory
>> error: could not run gpg.
>> fatal: failed to write commit object
>> ```
>>
>> I have tried set gpg.program value to `gpg|/tmp/log`, `/usr/bin/gpg
>> -v`, `gpg -v`, `"/usr/bin/gpg -v"`
>>
>> only after I set to `gpg` or `/usr/bin/gpg` without any argument, it will work.
> 
> Ah, right. Most of the time we run such programs as shell commands, but
> it looks like we do not. So you'd have to do something like:
> 
> 	cat >/tmp/fake-gpg <<-\EOF
> 	#!/bin/sh
> 	gpg -v "$@"
> 	EOF
> 	chmod +x /tmp/fake-gpg
> 	git config gpg.program /tmp/fake-gpg
> 
> -Peff
> 

The content of "gpg.program" is used as argv[0] when we build up various
commands to be run; we expect it to heed standard gpg options.

On the other hand:

git -c gpg.program=echo commit -S

'successfully' creates a commit that has

gpgsig -bsau Michael J Gruber <mickey@xxxxxxxxx>

as the last header line. gpg.program=true fails (as does cat, unhappy
with the options), so apparently we do some error checking but not enough.

Michael
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]