GPG 키에 대해 Git에 알리기
GitHub Enterprise Server 인스턴스에서 커밋 주체 ID 및 계정과 연결된 확인된 이메일 주소와 일치하는 GPG 키를 사용하는 경우 커밋 서명 및 태그 서명을 시작할 수 있습니다.
커밋자 ID와 일치하는 GPG 키가 없는 경우 메일을 기존 키와 연결해야 합니다. 자세한 내용은 "GPG 키와 메일 연결"을(를) 참조하세요.
여러 GPG 키가 있는 경우 사용할 GPG 키를 Git에 알려야 합니다.
-
Terminal(터미널) 를 엽니다.
(터미널) -
이전에
--gpg-sign
(으)로 서명할 때 다른 키 형식을 사용하도록 Git을 구성한 경우, 이 구성을 설정 해제하면 기본 형식인openpgp
이(가) 사용됩니다.git config --global --unset gpg.format
-
gpg --list-secret-keys --keyid-format=long
명령을 사용하여 퍼블릭 키와 프라이빗 키가 모두 있는 긴 형식의 GPG 키를 나열합니다. 커밋 또는 태그에 서명하려면 프라이빗 키가 필요합니다.Shell gpg --list-secret-keys --keyid-format=long
gpg --list-secret-keys --keyid-format=long
참고: Linux에서 일부 GPG를 설치하려면 기존 키 목록을 대신 보는 데
gpg2 --list-keys --keyid-format LONG
을 사용해야 할 수 있습니다. 이 경우git config --global gpg.program gpg2
를 실행하여gpg2
를 사용할 Git도 구성해야 합니다. -
GPG 키 목록에서 사용할 GPG 키 ID의 긴 형식을 복사합니다. 이 예제에서 GPG 키 ID는
3AA5C34371567BD2
입니다.Shell $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <hubot@example.com> ssb 4096R/4BB6D45482678BE3 2016-03-10
$ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <hubot@example.com> ssb 4096R/4BB6D45482678BE3 2016-03-10
-
Git에서 기본 GPG 서명 키를 설정하려면 아래 텍스트를 붙여넣고 사용하려는 GPG 기본 키 ID로 대체합니다. 이 예제에서 GPG 키 ID는
3AA5C34371567BD2
입니다.git config --global user.signingkey 3AA5C34371567BD2
또는 하위 키를 설정할 때
!
접미사를 포함합니다. 이 예제에서 GPG 하위 키 ID는4BB6D45482678BE3
입니다.git config --global user.signingkey 4BB6D45482678BE3!
-
필요에 따라 기본적으로 모든 커밋에 서명하도록 Git을 구성하려면 다음 명령을 입력합니다.
git config --global commit.gpgsign true
자세한 내용은 "커밋 서명"을(를) 참조하세요.
-
.bashrc
시작 파일에 GPG 키를 추가하려면 다음 명령을 실행합니다.[ -f ~/.bashrc ] && echo -e '\nexport GPG_TTY=$(tty)' >> ~/.bashrc
Git에 SSH 키에 대해 알리기
기존 SSH 키를 사용하여 커밋 및 태그에 서명하거나 서명을 위해 특별히 새 키를 생성할 수 있습니다. 자세한 내용은 "새 SSH 키 생성 및 ssh-agent에 추가"을(를) 참조하세요.
참고: SSH 서명 확인은 Git 2.34 이상에서 사용할 수 있습니다. Git 버전을 업데이트하려면 Git 웹 사이트를 참조하세요.
-
Terminal(터미널) 를 엽니다.
(터미널) -
SSH를 사용하여 커밋 및 태그에 서명하도록 Git을 구성합니다.
git config --global gpg.format ssh
-
Git에서 SSH 서명 키를 설정하려면 아래 텍스트를 붙여넣고, /PATH/TO/.SSH/KEY.PUB를 사용하려는 공개 키의 경로로 대체합니다.
git config --global user.signingkey /PATH/TO/.SSH/KEY.PUB
추가 참고 자료
- "GitHub 계정에 새 SSH 키 추가."
- "커밋 서명"
- "태그 서명"