https://juzdalua.tistory.com/5
Git 여러 계정 사용하기
회사계정, 개인계정을 하나의 컴퓨터에서 사용하다보면 repository에 접근하기가 어려워진다.이를 위한 해결책은 bash에서 ssh key를 이용한 방법이 있다. 1. rsa 키 만들기ssh-keygen -t rsa -C "깃헙계정@em
juzdalua.tistory.com
위 글은 2달차 신입이 작성한 글이라 지금 다시 봐도 어지럽다.
그래서 다시 작성한다.
먼저 깃 계정 2개가 필요하다. 회사계정 1개, 개인 계정 1개라 가정한다.
계정1: a@a.a
계정2: b@b.b
각각 키를 만들고, 각 계정의 Git ssh 정보를 입력한다.
ssh키의 정보는 .pub 파일이 아닌 확장자가 명시되지 않은 파일의 내용을 전부 복사하면 된다.
ssh-keygen -t rsa -C "a@a.a" -f id_rsa_a # id_rsa_a 파일에 암호정보 있음.
ssh-keygen -t rsa -C "b@b.b" -f id_rsa_b # id_rsa_b 파일에 암호정보 있음.
깃 로그인 -> 깃 프로필 사진 -> setting -> SSH and GPG keys
id_rsa_a / id_rsa_a.pub / id_rsa_b / id_rsa_b.pub 파일 4개롤 ~/.ssh 폴더로 이동한다.
폴더가 없으면 만든다.
config 파일 작성.
code ~/.ssh/config
# a 계정
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_a
# b 계정
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_b
호스트가 같으므로 한번에 두개의 키를 동시에 사용할 수 없다. 있지만 푸쉬할 때 키를 순회한다고 하기 때문에 하지 않을거다.
이제 터미널에 작성하기 귀찮으므로 스크립트 파일을 만들어 실행한다.
원하는 위치에 생성.
vim ssh-a
ssh-add -D
ssh-add ~/.ssh/id_rsa_a
git config --global user.name "a"
git config --global user.email "a@a.a"
동일하게 b 스크립트 파일도 만들어준다.
간단한 명령어를 작성해보자면 아래와 같다.
# a 키 등록
ssh-add id_rsa_a
# 에러가 발생한다면 아래를 입력하고 키 다시 등록
eval $(ssh-agent)
# 등록된 키 삭제
ssh-add -D
# 등록된 키 조회
ssh-add -l
# 등록된 키에 대한 사용자명을 "a"로 변경
git config --global user.name "a"
# 등록된 키에 대한 사용자 email을 변경
git config --global user.email "a@a.a"
# 현재 등록된 키에 대한 사용자 정보
git config --list
a로 커밋/푸시를 하고 싶다면 아래처럼 입력 후 커밋/푸시
./ssh-a
b계정도 이와 동일하다.
아래와 같은 에러가 발생한다면, 권한을 조정하면 된다.
Permissions are too open / WARNING: UNPROTECTED PRIVATE KEY FILE!
chmod 600 ~/.ssh/id_rsa_a
chmod 644 ~/.ssh/id_rsa_a.pub
chmod 700 ~/.ssh'Settings > Git' 카테고리의 다른 글
| Git) Push 취소하기 (0) | 2023.02.07 |
|---|---|
| Git) Git branch 삭제 후 생성 (0) | 2022.08.11 |
| Git) .gitignore 적용 안됨 (0) | 2022.08.09 |
| Git 여러 계정 사용하기 (0) | 2022.01.13 |
| Window git bash를 zsh로 실행하기 (0) | 2022.01.13 |