gpg-agent는 git 호출에서 요청되지 않습니다.

gpg-agent는 git 호출에서 요청되지 않습니다.

Git 커밋(gpg)에서는자식명령은 항상 암호 문구를 묻습니다.gpg-에이전트실행 중입니다.

나는 발사한다gpg-에이전트~와 함께

$ eval `gpg-agent -s --enable-ssh-support --daemon --write-env-file $HOME/.gpg-agent-info`

그런 다음 다른 터미널을 열고 실행 중인지 확인합니다.

$ cat ~/.gpg-agent-info
GPG_AGENT_INFO=/tmp/gpg-w2HH4r/S.gpg-agent:28539:1
SSH_AUTH_SOCK=/tmp/gpg-QQTJCD/S.gpg-agent.ssh
SSH_AGENT_PID=28539
$ ps -u $USER | grep gpg-agent
28539 ?        00:00:00 gpg-agent
$ echo $GPG_AGENT_INFO $SSH_AUTH_SOCK $SSH_AGENT_PID
/tmp/gpg-w2HH4r/S.gpg-agent:28539:1 /tmp/gpg-QQTJCD/S.gpg-agent.ssh 28539
$ echo test | gpg-aes -t D2FA51BD --use-agent | gpg --use-agent
....
test
....

첫번째 '....' 암호문이 필요하다고 말하고gpg-에이전트출시pinentry-gtk-2. 마지막 '....'라고 말하는데GPG키 ID로 서명 중입니다.

동일한 명령을 다시 실행하면 암호를 묻지 않습니다.

.

하지만 git을 실행할 때,GPG명령줄에서 암호를 요청합니다.pinentry가 있는 gpg-agent가 아님:

$ echo test >> test.txt ; git add test.txt ; git commit -S -m "test"
....
(intro passphrase)
....

다시 실행하면(그리고 다시...) 동일한 명령이 항상 (동일한 키 ID에 대한) 암호를 요청합니다.

나의.gitconfig만 설정했습니다.사용자 이름그리고이메일. 두 명령 모두 (GPG그리고자식) 동일한 키 ID를 요청합니다. 부름GPG~와 함께--사용 에이전트(그것 없이는) 잘 작동하지만,자식전달할 옵션이 없습니다GPG(사용자 구성 값만.gitconfig); 환경이 정확합니다.

벌채 반출gpg-에이전트~와 함께디버그 수준 8다음 활동만 표시됩니다.GPG명령은 있지만 아무 것도 없습니다자식.

나는 사용하고있다그누프 1.4.12그리고GPG-에이전트 2.0.19(Debian Wheezy 안정, 공식 저장소). github repo에서 git을 복제하고 동일한 결과로 현재 버전(2.3.0.rc1.30.g76afe74)을 로컬로 컴파일하고 설치했습니다.

구성을 확인했지만 이것이 어떤 문제인지 전혀 모르겠습니다. 어떠한 제안?

감사해요

답변1

바보같아... 설정 옵션사용 에이전트~에gpg.conf문제를 해결합니다.

힘내경우 확인하지 않습니다gpg-에이전트실행 중이고GPG옵션으로 호출해야 함--사용 에이전트.

기본 GPG 동작(옵션)을 변경해야 합니다...--사용하지 않는 에이전트다른 시나리오에서는.

관련 정보