Visual studio에서 git 계정을 여러 개 관리하고 싶어서 글을 작성하게 되었다.
( 물론 회사 노트북을 들고 다니지 않기 위한 목적도 있다. )
1995년 개발이 되어 unix나 linux 같은 OS에 안전하게 접속하기 위해 만들짐.
SSH 키를 생성하여 한 PC에서 여러 git 계정을 관리할 수 있다.
이러한 SSH 키를 사용하여 인증하는 방식을 공개 키 / 비밀 키 방식이라고 한다.
내 PC에 비밀 키( 열쇠 )를 저장하고, Github에 공개 키( 자물쇠 ) 를 업로드 하면 열쇠와 자물쇠의 쌍을 이용해서 사용자 인증 절차를 거친다.
$ ssh-keygen -t rsa -C "git 개인 계정" -f "id_rsa_userA"
$ ssh-keygen -t rsa -C "회사 계정" -f "id_rsa_userB"
""를 넣어주자.. 안해줘서 에러가 생겨 왜 안되지 했다ssh-add가 되지 않으니 꼭 실행$ eval "$(ssh-agent -s)"
ssh-add 해주기$ ssh-add ~/.ssh/id_rsa_userA
$ ssh-add ~/.ssh/id_rsa_userB
~/.ssh/config에 계정 연결해주기Host github.com-userA는 추후 clone을 할 때 쓰이기 때문에 잊어먹지 않게 쉬운 것으로 만들 것cat ~/.ssh/config로 다시 확인하면 된다.# userA에 대한 SSH 설정
Host github.com-userA
HostName github.com
User 개인 계정
IdentityFile ~/.ssh/id_rsa_userA
# userB에 대한 SSH 설정
Host github.com-userB
HostName github.com
User 회사 계정
IdentityFile ~/.ssh/id_rsa_userB
# ssh는 2개 파일로 이루어져 있다.
# .rub 파일의 내용을 전부 복사해온다.
cat ~/.ssh/id_rsa_uesrA.rub

5-1에서 복사한 key값을 넣어준다.
Hi userA! You’ve successfully authenticated...라는 메세지를 확인할 수 있다.ssh -T git@github.com-userA
git clone 받아서 테스트ssh key를 등록했기 때문에 clone을 받을 때 ssh 로 가져온다.https가 아닌 ssh이다~/.ssh/config에서 설정한 Host이다.git clone git@"~/.ssh/config에서 설정한 Host":jigomgom/userA-test.git


이게 뭐라고 안하고 있었는지 모르겠다.
또한, 정말 오랜만의 블로그...
얼마나 블로그를 방치하고 있었는지 깨닫게 해주는 순간...
다시 블로그 쓰기