본문 바로가기
git (협업 툴) 사용법 정리

Github : SSH 키 등록을 통해 여러개의 깃헙 저장소 등록하여 관리하기

by 번데기 개발자 2024. 2. 21.
반응형

 

보통 github를 통해 개발을 진행할 때 SSH Key를 생성하고 공개키를 github 서버에 등록한 뒤 개발을 하게 됩니다.

 

단순히 github 계정이 한개라면 문제가 없지만 2개 이상의 github 저장소를 등록을 하고 개발을 진행해야 할 때 어떻게 해야 하는지 한번 알아보도록 하겠습니다.

 

회사용 및 개인용 Repository를 연결한다고 생각하고 설명드리겠습니다.

 

 

SSH Key 생성하기

 

맨 먼저 SSH Key를 생성하여야 합니다. 

 

이때 회사 Repository를 사용할 ssh-key 와 개인 Repository를 사용할 ssh-key를 생성하여 줍니다.

 

ssh-keygen -f ~/.ssh/id_rsa # 회사용
ssh-keygen -f ~/.ssh/id_personal # 개인용

 

SSH key github에 등록하기

 

 

SSH 키 생성

 

위에서처럼 ssh-keygen 명령어를 사용하여 개인용 Repository를 위한 SSH 비밀키 및 공개키와, 회사용 Repository를 위한 SSH 비밀키와 공개키 세트 확인합니다.

 

회사 Repository에 공개키 등록

 

이후 생성된 개인키와 공개키 중에 공개키를 각각의 github repository에 등록합니다.

 

예를 들면, 위에서처럼 회사 Repository에 id_rsa.pub 공개키를 등록하고, 개인용 Repository에는 id_personal.pub 공개키를 등록합니다.

 

 

SSH Config 설정하기

 

Github 등록까지 마쳤으면, 이제는 ssh config 등록을 통해 회사용 Github Repository와 개인 Github Repository를 위한 호스트를 각각 분리하여 등록합니다. 

 

먼저 사용자의 `~/.ssh/config` 파일을 아래와 같이 수정합니다. 해당 파일은 SSH 클라이언트 설정파일로, 해당 파일을 수정하여 특정 호스트에 대한 구성을 설정할 수 있습니다. 

 

vim ~/.ssh/config
# 회사 Repository 용 
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
IdentitiesOnly yes

# 개인 Repository 용
Host github.com-personal
HostName github.com
User git
IdentityFile ~/.ssh/id_personal
IdentitiesOnly yes

 

SSH Config 구성

 

위에서처럼 Host를 통해 각각의 github.com-company는 회사용 계정을 위한 SSH 비밀키를 사용하고, github.com-personal은 개인용 계정을 위한 SSH 비밀키를 사용하도록 구성합니다.

 

참고로, Host 값은 꼭 위와 같은 형식( ex. `github.com-company` )으로 할 필요는 없고 `company`, `personal` 이렇게 단순한 문자열로 설정하여도 됩니다. 다만 HostName은 실제 Github 서버의 원격 주소인 `github.com`을 입력해주어야 합니다. 

 

위와 같이 설정을 했다면 설정은 모두 완료되었습니다.

 

 

각각의 Repository에서 작업하기

 

이후에는 다음과 같이 config 파일에 등록된 주소를 통해 github 작업을 수행할 수 있습니다.

 

 

실제 동작 테스트

 

 

마무리

 

SSH Config 구성을 통해 여러 개의 깃헙 저장소를 관리하는 방법에 대해 알아보았습니다.

 

저도 처음에 설정 부분에서 많이 햇갈렸는데, 한번 구성을 해보면 크게 어렵지 않은 것 같습니다.

 

다음에도 유용한 정보로 포스팅하겠습니다.

 

감사합니다.

반응형