약 반년 전 즈음에 처음 깃 서명을 알게 되었고 verified라는 깃헙 마크가 갖고 싶어서 깃헙 공식 문서를 보고 따라 했었던 기억이 있다. 당시 중간에 잘못 따라한 부분이 있었던 것인지 unverified가 떴었다. 이 문제를 오랜만에 해결해보고 싶어서 다시 공식 문서를 톺아보며 해결한 나의 간단한 방법을 작성해 보겠다.
(깃헙 공식 commit signature verification 문서)
About commit signature verification - GitHub Docs
Using GPG, SSH, or S/MIME, you can sign tags and commits locally. These tags or commits are marked as verified on GitHub so other people can be confident that the changes come from a trusted source.
docs.github.com
unverified가 뜨는 이유
먼저 unverified가 뜨는 이유를 파악하면 쉬워진다. unverified는 서명이 있지만 확인되지 않은 경우에 해당된다. GPG 키에 서명이 되어 있지만 해당 키가 깃헙에 존재하지 않거나, 만료되었을 때 뜬다. 확인해 볼 절차는 다음과 같다. git bash에 해당 명령어를 입력해 보자.
gpg --list-secret-keys --keyid-format LONG
만약 GPG 키가 존재한다면, 아래와 같은 키의 목록이 출력된다.
/home/user/.gnupg/secring.kbx
------------------------------
sec rsa4096 2022-06-15 [SC] [expires: 2024-06-14]
1234567890ABCDEF1234567890ABCDEF12345678
uid [ultimate] Alice Smith <alice.smith@example.com>
ssb rsa4096 2022-06-15 [E] [expires: 2024-06-14]
/gpg/키/링/파일/경로.kbx
------------------------
sec keyType&keySize/키_고유_식별자_마지막_16개 [생성된 날짜] [키의용도] [expires: 만료날짜 ]
키_고유_식별자
uid [사용자 ID신뢰수준] 소유자의 이름 <이메일>
ssb keyType&keySize/비밀서브키 생성된 날짜 [E] [expires: 만료날짜]
만약 없다면 GPG 키를 생성하고 만약 존재한다면 해당 키의 이메일이 깃헙에 등록된 이메일과 같은지 확인해보아야 한다.
깃헙 우측 상단 프로필 아이콘 => 설정 => 왼쪽 메뉴 바에서 Access의 Emails를 들어가면 확인할 수 있다.
만약 설정 Email에서 아래 체크 박스가 체크되어 있다면, GPG Key를 생성할 때 깃헙 이메일을 등록해서는 안된다. 만약 그랬다가는 내가 그랬듯이 unverified가 뜨게 된다. 아래 체크 박스를 설정하게 되면 이메일 형식을 새로 만들어주며 그 이메일 형식을 통해 깃을 활동하게 된다. 형식은 <깃헙 사용자이름>@users.noreply.github.com으로 변경된다.
예시 사진의 primary 이메일 상세 설명 박스를 보면 norelpy.github.com으로 변경된 것을 볼 수 있다.
이메일을 등록할 때 새로 받은 형식의 이메일을 등록해 주면 커밋했을 때, 이쁘게 verified가 뜨는 걸 확인할 수 있을 것이다!
'Programming' 카테고리의 다른 글
[OOP]ORM(Object-Relational-Mapping) (0) | 2024.06.28 |
---|---|
[지식 한 입] Java는 웹 개발을 목적으로 개발된 언어가 아니었다 (0) | 2024.06.24 |
[JAVA]숫자 야구 - 숫자 맞추기 논리 게임 그리고 트러블 슈팅 (0) | 2024.06.21 |
[Python] 밸런스 게임 회고 (2) | 2024.06.19 |