WEB/Git

[Git] 커밋 시그니쳐 인증 방법 (SSH)

wenna21 2023. 12. 20. 17:38
반응형

0.

Github에서 가끔 Commit 로그를 봤을 때 보이는 `verified` 태그가 있습니다.

Github 웹페이지에서 커밋하면 커밋과 동시에 나오지만,

 

로컬로 작업할 때 안 떠서 불편했던 경험이 있습니다.

 

그래서 이번 글에서는 로컬에서 커밋했을 때도 `verified` 태그를 띄워보도록 하겠습니다!

1. SSH 키 생성하기

혹시 SSH 키를 새로 생성해야하시는 분께서는 아래 글을 먼저 따라하신 후 돌아와주세요 :D

[Git] 신규 SSH 키 생성 방법 (tistory.com)

 

[Git] 신규 SSH 키 생성 방법

0. Git에서 Commit Signature를 인증하거나 유저 자신을 인증하는데 사용하는 SSH 키를 발급받는 방법에 대해 소개합니다. 1. SSH 키 생성하기 Git Bash를 열어 다음 코드를 작성합니다: ssh-keygen -t ed25519 -C "

noeulstory.tistory.com

2. Github에 SSH 키 추가하기

① Git Bash에 들어가서 SSH 키를 복사 받아옵니다.

 

clip < [경로]
# 예시:
# clip < ~/.ssh/id_ed25519.pub

이 코드를 입력하시면 클립보드에 SSH 키가 복사될 겁니다.

 

CTRL+V로 잘 복사되었는지 확인해보세요.

 

② Github 웹페이지로 이동합니다.

 

Settings > SSH and GPG keys 페이지로 이동합니다. 또는 여기

 

그 다음에 New SSH Key 버튼을 클릭합니다.

 

③ 키를 붙여넣습니다.

Title에는 개인적인 용무로 사용할 경우 대체로 Personal로 이름 짓는 편이지만 자유롭게 설정하셔도 좋습니다!

 

Key Type은 Signing Key로 바꿔주세요.

 

마지막 Key 부분에는 클립보드에 있는 SSH 키를 붙여넣고,

 

Add SSH key 버튼을 눌러 마칩니다.

3. 로컬에 SSH 키 입력하기

로컬에서 Commit을 해야하니 로컬에도 키를 추가해주어야 합니다.

 

① Git Bash에서 아래 코드를 입력합니다.

 

# 인증할 때 SSH 사용을 설정
git config --global gpg.format ssh

 

git config --global user.signingkey [SSH 키 경로]
# 예시:
# git config --global user.signingkey /c/Users/myname/.ssh/id_ed25519.pub

4. Commit하기

이제 잘 적용되었는지 실제 Commit을 Push해서 확인해보겠습니다!

 

커밋 방법은 다음과 같이 코드에 -S만 추가하면 됩니다.

 

git commit -S -m "YOUR_COMMIT_MESSAGE"
git push

성공적으로 `verified` 태그를 붙였습니다!

5. 참고

About commit signature verification - GitHub Docs

 

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

Adding a new SSH key to your GitHub account - GitHub Docs

 

Adding a new SSH key to your GitHub account - GitHub Docs

To configure your account on GitHub.com to use your new (or existing) SSH key, you'll also need to add the key to your account.

docs.github.com

Telling Git about your signing key - GitHub Docs

 

Telling Git about your signing key - GitHub Docs

To sign commits locally, you need to inform Git that there's a GPG, SSH, or X.509 key you'd like to use.

docs.github.com

Signing commits - GitHub Docs

 

Signing commits - GitHub Docs

You can sign commits locally using GPG, SSH, or S/MIME.

docs.github.com

 

반응형