개발하기좋은날

GIT 다 계정 SSH 설정 방법 본문

iOS/Tip

GIT 다 계정 SSH 설정 방법

devbi 2023. 4. 1. 15:54
반응형

준비물

  • 작업 환경 : Mac (window에서도 비슷한 과정으로 했는데 잘 됐어요😁)
  • 터미널
  • 등록 계정 예시 (이메일이거나 아닌 경우 각자 상황에 맞춰서!)

ssh-key 생성

$ cd ~/.ssh // 루트경로에서 ssh 숨김 폴더로 이동 
$ ssh-keygen -t rsa -b 4096 -C 'gaegul'

터미널을 열어 ssh 숨김 폴더로 이동 후 깃헙 계정을 등록해 줍니다.

  • -t ras : 암호화 방식을 rsa로 지정
  • -b 4096 키의 바이트 크기를 최대로 지정해 줍니다.
  • -C ‘gaegul’ 계정을 추가해 주세요. 메일이라면 메일 형태로 추가해 주시면 됩니다.
$ file in which to save the key (/Mac/.ssh/id_rsa): id_rsa_stduy

잘 작성했다면 위와 같은 설정에 관한 내용이 나옵니다.
저는 개인 계정이므로 키값을 id_rsa_study로 해 주었습니다.
계정 2개 구분을 위한 값이니 본인이 구분하기 편하도록 작성해 주세요.
작성하지 않고 엔터치면 기본값 id_rsa로 설정됩니다.

$ Enter passphrase (empty for no passphrase):
$ Enter same passphrase again:

다음에 비밀번호 입력 메세지가 나오는데, 저는 비밀번호 설정없이 엔터쳐서 넘겼습니다.

자, 이제 첫번째 개인 계정 ssh key 파일이 생성되었습니다.
위 과정을 반복하여 오피셜 계정도 등록해 주세요.

$ ssh-keygen -t rsa -b 4096 -C 'gaegul@gaegulcompany.com'
$ file in which to save the key (/Mac/.ssh/id_rsa): id_rsa_work

오피셜 계정이며, 키값은 id_rsa_work입니다.
이후 엔터, 엔터해서 비밀번호 설정까지 완료해 주세요.

$ ls

ls 명령어로 생성된 파일 목록을 확인해 봅니다.


pub가 붙지 않은 것은 비공개 ssh이며 *.pub 파일은 공개 ssh를 의미합니다.

  • id_rsa_study
  • id_rsa_study.pub
  • id_rsa_work
  • id_rsa_work.pub

내용이 많아 보이지만 간단합니다 :)

ssh-key 등록

$ eval "$(ssh-agent -s)"

더 슬기롭고 편리한 깃헙 생활을 위하여 생성한 키를 ssh-agent에 등록합니다.

$ ssh-add ~/.ssh/id_rsa_study
$ ssh-add ~/.ssh/id_rsa_work

환경설정

계정 별로 SSH 설정파일을 작성합니다.
해당 경로에서 직접 파일을 생성해도 되고, vim을 켜서 작업해도 무방합니다.

Vim으로 환경설정 작성

  1. 폴더 생성 후 vim 에디터 열기
$ touch ~/.ssh/config //.ssh폴더에 config 폴더를 생성
$ vi ~/.ssh/config //vim 에디터 열기
  1. vim 에디터가 열렸으면 아래와 같이 개인에 맞춰 작성합니다.
#  깃헙계정 work
#  -------------------
Host github.com-work
  HostName github.com
  IdentityFile ~/.ssh/id_rsa_work
  User gaegul@gaegulcompany.com 

# 깃헙계정 study
#  -------------------
Host github.com-study
  HostName github.com
  IdentityFile ~/.ssh/id_rsa_study
  User gaegul

  1. 작성 완료했다면 vim 명령어로 저장하고 나오기
    ESC 누르고 :w 로 저장을 합니다. 마지막으로 :q 입력하여 에디터 종료

Github SSH 설정

github에 로그인하여 설정 페이지로 이동합니다.

  1. 우측 프로필 사진 드롭다운 클릭
  2. Settings
  3. 좌측 사이드바 SSH and GPG keys
  4. New SSH Key
  • title : 아무거나. 저는 키 타이틀이랑 똑같이 했어요.
  • key : 각 key의 _pub 값을 복붙해서 넣어주면 됩니다.

key값 복사하는 방법

1. 파일 열어서 직접 복사

$ open .

.ssh 폴더에서 저는 open . 명령어로 파인더를 열었고, pub 파일 두개 vscode로 열어서 키값 복사하기 

 

2. 명령어로 복사

$ pbcopy<~/.ssh/id_rsa_study.pub
$ pbcopy<~/.ssh/id_rsa_study.work

이 단계에서 중요한 점은 각 계정별로 깃허브에 로그인하여 키값을 각 계정별로 등록해야 합니다.

잘 되었나…!

잘 등록이 되었을까요? 테스트 해봅시다.

$ ssh -T git@github.com-work
$ ssh -T git@gitbhu.com-study

잘 연결이 되었다면 아래같은 멘트가 나옵니다! 유후
Hi gaegul! You’ve successfully authenticated, but GitHub does not provide shell access.

계정 별 remote 설정하기, clone받기

이렇게 설정하고 저도 몇 번 까먹어서, 왜 안돼;;😨 했던 부분인데요.
보통 저는 레포지토리 클론받을 때, https url 카피하고,

git clone https://github.com/gaegul/gageul-repo

위의 명령어로 받았습니다.
하지만 이제 우리의 ssh key를 생각해 주세요!

git clone git@github.com-study:gaegeul/gaegul-repo.git
git clone git@github.com-work:gaegeul@gaegulcompany.com/gaegul-repo.git

github.com-키네임 을 입력해 주시면 됩니다.
remote도 동일하게 진행합니다.

git remote add origin git@github.com-study:gaegul/gaegul-repo.git

 

 


이후 각각 git config --local user.name, email 설정해서 사용하면 됩니다 

 

 

 

- 출처

https://minimal-dev.tistory.com/36

 

Mac에서 Github 여러 계정 사용하기

github 개인 계정 하나만 사용하다가, 사이드 프로젝트를 시작하며 프로젝트용 계정도 사용하게 되었는데. 새로운 계정으로 커밋하는 과정에서 에러 발생. 에러.에러.에러.무한에러의 늪에 빠졌

minimal-dev.tistory.com

 

반응형

'iOS > Tip' 카테고리의 다른 글

간단하게 .Crash Report 정보 확인하기  (0) 2021.02.02
iOS .dsym에 대하여  (0) 2021.02.02
Swift 문법 간단 정리  (0) 2021.01.19
iOS 간단 UDID 확인 방법  (0) 2021.01.11
Comments