떵호
seongho'Dev
떵호
전체 방문자
오늘
어제
  • 분류 전체보기 (116)
    • 회고 (2)
    • Algorithm (74)
      • 프로그래머스 (65)
      • 백준(BOJ) (2)
      • Note (7)
    • 기술독서 (25)
      • Clean Code (11)
      • 자바의 정석 (8)
      • 대규모 시스템 설계 기초 (6)
    • Computer Science (1)
      • Operating System (1)
    • Typescript (1)
    • JAVA (0)
    • Spring (6)
      • JPA (6)
    • AWS (2)
    • Git (2)
    • Etc (2)

블로그 메뉴

  • github

티스토리

태그

  • 클린코드
  • 코딩테스트 준비
  • 카카오 코테
  • Clean Code
  • JPA
  • 프로그래머스
  • 구현
  • 자바의 정석
  • 완전탐색
  • 알고리즘
hELLO · Designed By 정상우.
떵호

seongho'Dev

[Github] ssh를 이용한 여러 개의 깃허브 계정 사용하기
Git

[Github] ssh를 이용한 여러 개의 깃허브 계정 사용하기

2022. 11. 23. 20:02
728x90

프로젝트를 하다 보면 서로 다른 깃허브 계정으로 작업해야 할 때가 있다.

이때 ssh를 이용하면 CLI에서 서로 다른 계정으로 깃허브 관리를 할 수 있다.

ssh key 생성

$ ssh-keygen -t rsa -C "your_email@example.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/사용자 이름/.ssh/id_rsa): id_rsa_me

~/.ssh로 이동 후 위 명령어로 ssh key를 생성한다.
메일에 개인 프로젝트라면 개인 계정 입력하고, 회사 프로젝트라면 회사 계정을 입력한다. 필자는 key 이름을 개인 프로젝트일 경우 id_rsa_me, 회사 프로젝트일 경우 id_rsa_[회사이름]으로 생성했다.

입력을 완료했다면 id_rsa_me.pub, id_rsa_me 파일이 생성된다.

생성한 ssh key를 ssh-agent에 등록

$ eval "$(ssh-agent -s)"
$ ssh-add -K ~/.ssh/id_rsa_me

위 명령어로 ssh-agent를 실행 후 ssh key를 등록한다.

github에 공개키 등록

깃허브 설정에 들어가서 좌측 사이드바 메뉴의 SSH and GPC Key에 들어간다. 여기서 New SSH key 버튼을 클릭하여 위 과정에서 생성한 *.pub 파일의 내용을 복사해서 넣는다.

$ cat ~/.ssh/id_rsa_me.pub | pbcopy

위 명령어를 이용하면 직접 복사하지 않아도 복사가 된다.

현재 과정을 개인 계정과 회사 계정 모두 ssh key를 등록한다.

ssh config 설정

github에서 ssh key로 접근할 수 있게 해 주기 위해 설정해야 한다.

$ vi ~/.ssh/config
# 개인 계정
Host github.com-me
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa_me
# 회사 계정
Host github.com-[회사이름]
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa_[회사이름]
  • Host: 저장소 주소를 불러올 때 쓰임
  • IdentityFile: ssh key의 경로

github에서 ssh로 클론 할 땐  git@github.com:[username]/respostory.git가 아닌 git@github.com-me:[username]/respostory.git로 해야 한다.

.git/config 설정

클론 한 리포지토리로 이동한다.

$ vi [repostiory path]/.git/config

[remote "orgin"]
url = git@github.com:[GithubID]/[RepositoryName].git

url 부분이 github.com로 되어있을 텐데 github.com-me로 수정하고 저장한다.

테스트

깃허브 저장소에 연결된 로컬 터미널에서 아래 명령어를 수행해 ssh key가 잘 동작하는지 확인할 수 있다.

$ ssh -T git@github.com-me
Hi [GithubID]! You've successfully authenticated, but GitHub does not provide shell access.

위와 같이 나오면 ssh 설정이 잘 된 것이다.

참고

[GitHub] SSH를 이용해 여러 개의 깃허브 계정 사용하기

728x90
저작자표시 (새창열림)

'Git' 카테고리의 다른 글

[Git] username과 email 설정  (0) 2022.11.11
    'Git' 카테고리의 다른 글
    • [Git] username과 email 설정
    떵호
    떵호

    티스토리툴바