GPG 비밀번호를 요청할 때 git이 일부 GUI 응용 프로그램 대신 cli를 사용하도록 만드는 방법은 무엇입니까?

GPG 비밀번호를 요청할 때 git이 일부 GUI 응용 프로그램 대신 cli를 사용하도록 만드는 방법은 무엇입니까?

서명된 git 커밋을 생성하려고 할 때마다 GPG 키를 입력해야 합니다. 비밀번호를 수신하기 위해 일부 GUI 애플리케이션을 생성합니다. 앱이 그런거 같네요seahorse, 그래서 제거했지만 git은 여전히 ​​일부 GUI 응용 프로그램을 사용합니다. Polybar는 애플리케이션 이름을 보고하지 않고 제목만 보고합니다 [process]@MYPC.

Git에서 명령줄/pinentry를 사용하도록 만드는 방법은 무엇입니까?

버전:

답변1

이는 git 구성 문제가 아닌 GnuPG 구성 문제입니다.

pinentry-program.gnupg 파일에 설정하여 GnuPG가 비밀번호 입력을 위해 터미널 기반 대화 상자를 사용하도록 강제할 수 있습니다 gpg-agent.conf. 간단한 터미널 프롬프트의 경우 다음을 다음과 같이 입력하세요 ~/.gnupg/gpg-agent.conf.

pinentry-program /usr/bin/pinentry-tty

저주 기반 팁의 경우:

pinentry-program /usr/bin/pinentry-curses

답변2

당신의 것에는 무엇이 있습니까 ~/.gnupg/gpg-agent.conf?

내 것 pinentry-program /usr/bin/pinentry-curses, 내가 사용하는 모든 것은 gpg터미널에서 비밀번호를 묻습니다.

참고: 구성을 변경하는 경우 gpg-agent를 다시 시작해야 합니다(또는 HUP 신호를 보내야 함). 그냥 실행 gpgconf --kill gpg-agent하고 gpg필요한 경우 다시 시작하세요.

또한 참고: 환경 변수 GPG_TTY는현재의tty(즉, 현재 실행 중인 tty 또는 , 등과 gpg같이 gpg라고 불리는 모든 것 ). 따라서 ~/.bashrc(또는 쉘에 적합한 모든 항목)에 다음을 추가하십시오.muttpassgit

GPG_TTY=$(tty)
export GPG_TTY

man gpg-agent자세히보다.

관련 정보