vscode Git: gpg failed to sign the data: 에러 해결

gpg 설정은해두었는데 타임 아웃 나면 맨날 터미널에서 비번 입력 해야해서 불편하다가 이참에 확인하고 수정

에러 자체는 아래와 같은 창이 뜬다. 

Git: gpg failed to sign the data:

 

git에 gpg 프로그램 설정 

글로벌 설정하기

git config --global gpg.program /opt/homebrew/bin/gpg

 

확인하기

git config --global --get gpg.program

 

맥에서 pinentry-mac 설정

pinentry-mac를 brew로 설치하고 ~/.gnupg/gpg-agent.conf 에 다음과 같이 입력 

pinentry-program /opt/homebrew/bin/pinentry-mac   # (Intel이면 /usr/local/bin/pinentry-mac)
default-cache-ttl 604800
max-cache-ttl 31536000

 

에이전트 리로드

gpgconf --kill gpg-agent
gpgconf --launch gpg-agent

 

loopback 비활성화?

무엇인지 모르겟으나.. vscode에서 gui를 띄우기 위한 작업이라 한다. 

test -f ~/.gnupg/gpg.conf || touch ~/.gnupg/gpg.conf
# 있다면 주석 처리
sed -i.bak 's/^pinentry-mode\s\+loopback/# &/' ~/.gnupg/gpg.conf

 

이후에 vscode 터미널에서 다음 명령어로 터미널이 뜨는지확인

echo test | gpg --clearsign