티스토리 뷰

Web Development

GIT Hub multiple accounts (Mac)

§무명소졸§ 2020. 1. 20. 15:43

한 대의 PC에서 GitHub의 계정을 여러개 사용할 경우 번거로움이 있다. Git크라켄 같은 상용Git 툴에서는 해당 기능을 유료 버전에만 지원하기도한다. 오늘은 ssh를 이용한 github 계정 여러개 사용하는 방법을 알아 보려한다. 

SSH Key 생성

ssh-keygen -t rsa -C "warpgate3@naver.com"  #github 계정

➜  .ssh ssh-keygen -t rsa -C "warpgate3@naver.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/mhkim/.ssh/id_rsa):/Users/mhkim/.ssh/my_github #디렉토리를 명시적으로 써주는게 좋다.
Enter passphrase (empty for no passphrase):   #RSA Key 비밀번호 입력
Enter same passphrase again:                  #RSA Key 비밀번호 재입력

 

SSH Key 파일 

유저 home 디렉토리 밑에 .ssh 디렉토리 밑에 방금 생성한 파일명으로 2개의 파일을 확인할 수 있다. RSA 암호화에서 중요한 역할을 하는 
public key 와 private key 이다. 

ls -al ~/.ssh

-rw-------    1 mhkim  staff  1876  1 20 17:21 my_github
-rw-r--r--    1 mhkim  staff   401  1 20 17:21 my_github.pub  #공개키

 

Config 파일 생성

~/.ssh 폴더 밑에 Config 파일을 생성하고(이미 있으면 수정) 아래와 같이 입력한다.

vi ~/.ssh/config

Host my-github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/my_github

 

인증서 등록

private key를 ssh에 등록한다. SSH Key 파일 생성시 입력 했던 비밀번호를 요구한다.

ssh-add ~/.ssh/my_github
Enter passphrase for /Users/mhkim/.ssh/my_github:
Identity added: /Users/mhkim/.ssh/my_github (warpgate3@naver.com)



Github에 Public Key 등록

github에 로그인 후 해당 URL로 이동 https://github.com/settings/keys    

아래에 my_github.pub 의 내용을  cat 명령어로 확인한다. ssh-rsa 부터 메일 계정까지 전부 Key 부분에 붙혀넣는다.

.ssh cat ~/.ssh/my_github.pub
ssh-rsa AAAAB3Nz ~...중략...~ OoRc/LGnR warpgate3@naver.com

 

Git Work directory 에 remote 등록

소스가 있는 작업디렉토리로 이동해서 remote 를 등록해준다.

git remote set-url origin git@my-github.com:warpgate3/sss.git

git push
Enumerating objects: 17, done.
Counting objects: 100% (17/17), done.
Delta compression using up to 4 threads
Compressing objects: 100% (5/5), done.
Writing objects: 100% (9/9), 585 bytes | 292.00 KiB/s, done.
Total 9 (delta 3), reused 0 (delta 0)
remote: Resolving deltas: 100% (3/3), completed with 3 local objects.
To my-github.com:warpgate3/sss.git
   f3fdbf3..f75e89b  master -> master

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크