Lighthouse of FE beginner

Windows ssh를 통한 Git 프로필 등록 본문

이것저것

Windows ssh를 통한 Git 프로필 등록

[FE] Lighthouse 2025. 1. 31. 11:31

여러 Git 계정을 사용하고 싶은 경우가 있습니다. 이런 경우 ssh 키를 저장소 (Github, Gitlab, Bitbucket ...)에 등록해 사용할 수 있습니다.

 

Windows에서 ssh를 사용해 여러가지 Git 프로필을 사용하는 법을 살펴보겠습니다.

Linux나 mac OS에서도 마찬가지의 방식으로 ssh 키 생성, 깃 허브에 ssh키 등록, config 파일을 사용해 ssh 연결 과정을 Git 프로필을 사용할 수 있습니다.

 

키 파일 생성

먼저 키 파일을 생성해주세요. 사용하실 이메일을 입력해 생성하시면 됩니다.

ssh-keygen -t ed25519 -C "your_email@example.com"

 

Ed25519 알고리즘을 지원하지 않는 레거시 시스템은 아래의 방식으로 생성해주세요.

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"


아래 프롬프트는 Enter로 패스해도 무방합니다.

> Enter passphrase (empty for no passphrase): [Type a passphrase]
> Enter same passphrase again: [Type passphrase again]

 

ssh agent에 SSH 키 추가

관리자 권한으로 쉘을 실행합니다. 아래 스크립트를 하나씩 입력해 ssh-agent를 시작해주세요.

Get-Service -Name ssh-agent | Set-Service -StartupType Manual
Start-Service ssh-agent

 

ssh agent에 ssh키를 추가합니다. 아래 경로 중 YOUR에는 사용자 명을 넣어주셔야 합니다.

 

이때 주의할 점은 pub키가 아닌 비밀키를 등록하셔야 합니다.

ssh-add c:/USERS/{YOUR}/.ssh/id_ed25519

 

Git에 ssh키 추가

상단 설정 > Settings > 좌측 메뉴의 SSH and GPG keys 로 접속 합니다.

SSH Keys의 New SSH Key를 클릭합니다.

 

Title: 키 명칭
Key: pub키 내용 복사 후 등록

 

쉘 기준으로 아래 명령어로 pub키를 확인할 수 있습니다. id_ed25519는 key 명칭입니다. 생성한 키 명칭을 확인해주세요.

ssh-ed25519 ~~~~~ your_email@example.com 이 확인될 것 입니다.

cat ~/.ssh/id_ed25519.pub

 

config에 ssh 등록

./ssh 폴더에 config 파일을 수정 (없다면 생성)합니다.
윈도우의 경우 확장자 없이 config 파일을 생성 후 메모장으로 열어서 수정하시면 됩니다.

 

위치는 C:/Users/{YOUR}/.ssh/config 입니다.

Host {호스트명}
    HostName {호스트 이름}
    User {사용할 유저 명칭}
    IdentityFile {키파일 위치}

# 예시
Host github.com-kangactor123
    HostName github.com
    User kangactor123
    IdentityFile ~/.ssh/id_ed25519

 

ssh 연결 테스트

ssh -T git@호스트명칭

# 예시
ssh -T git@github.com-kangactor123

 

아래 내용이 나오면 ssh 연결이 성공적으로 된 것 입니다.

Hi {사용할 유저 명칭} You've successfully authenticated, but GitHub does not provide shell access.

 

ssh로 clone

레포지토리 우측 상단의 Code 클릭
Local > Clone의 SSH 클릭 후 복사

 

Git bash 혹은 PowerShell

git clone git@호스트명:유저명/저장소명.git

# 예시
git clone git@github.com-kangactor123:kangactor123/ssalon-fe.git


사용자의 계정을 변경하고 싶은 경우

글로벌한 설정을 변경하는 것이 아닌 로컬의 설정을 변경하는 것입니다.

git remote set-url origin git@github.com-user1:user1/저장소명.git
git config user.email user1@example.com

# 예시
git remote set-url origin git@github.com-kangactor123:kangactor123/ssalon-fe.git
git config user.email kangactor123@naver.com

'이것저것' 카테고리의 다른 글

[소프트웨어] 리팩토링을 대하는 자세  (3) 2024.12.14
"admin" == "admin "  (1) 2024.10.24
내려놓기  (8) 2024.10.05
  (2) 2024.09.14
[소프트웨어] 리팩토링 글을 읽고  (1) 2024.09.12