VS Code에서 프로젝트별 Git 계정 분리
(SSH + 자동 설정 완전 정리)
작성일: 2026.04.27 · 읽기 시간: 6분
여러 개의 GitHub 계정(개인/회사)을 동시에 사용하다 보면 커밋 작성자나 push 계정이 꼬이는 문제가 자주 발생합니다. 이 글에서는 다음 3가지를 한 번에 해결하는 방법을 정리합니다.
- 프로젝트마다 다른 Git 계정 사용
- SSH로 계정 인증 완전 분리
- 폴더 기준으로 자동 계정 적용 (추가 설정 없이 사용)
1 SSH 키로 계정 분리
1-1. SSH 키 생성
PowerShell 기준:
mkdir $HOME\.ssh
ssh-keygen -t ed25519 -C "personal" -f $HOME\.ssh\id_kate_dev
ssh-keygen -t ed25519 -C "work" -f $HOME\.ssh\id_kh_undi
엔터를 눌러 passphrase는 비워도 됩니다.
1-2. GitHub에 SSH 키 등록
각 키의 public key를 복사합니다.
Get-Content $HOME\.ssh\id_kate_dev.pub
Get-Content $HOME\.ssh\id_kh_undi.pub
복사한 값을 각각 다음 위치에 등록합니다.
- 개인 GitHub 계정
- 회사 GitHub 계정
(Settings → SSH and GPG keys → New SSH key)
1-3. SSH config 설정
notepad $HOME\.ssh\config
아래 내용을 추가합니다.
Host github-personal
HostName github.com
User git
IdentityFile ~/.ssh/id_kate_dev
Host github-work
HostName github.com
User git
IdentityFile ~/.ssh/id_kh_undi
1-4. 연결 테스트
ssh -T git@github-personal
ssh -T git@github-work
성공하면 인증 메시지가 출력됩니다.
2 프로젝트별 remote 설정
각 프로젝트에서 사용하는 계정에 맞게 remote를 설정합니다.
개인 프로젝트
git remote set-url origin git@github-personal:아이디/레포.git
회사 프로젝트
git remote set-url origin git@github-work:아이디/레포.git
확인:
git remote -v
3 폴더 기준 자동 계정 분리
매번 git config user.name을 설정하지 않기 위해 폴더 기준 자동 설정을 적용합니다.
3-1. 계정별 config 파일 생성
회사용
notepad $HOME\.gitconfig-work
[user]
name = kh-undi
email = kh.undefiance@gmail.com
개인용
notepad $HOME\.gitconfig-personal
[user]
name = delidaily
email = kate.devcloud@gmail.com
3-2. 메인 gitconfig 수정
notepad $HOME\.gitconfig
아래 내용을 추가합니다.
[includeIf "gitdir:C:/proj/"]
path = ~/.gitconfig-work
[includeIf "gitdir:C:/proj-test/"]
path = ~/.gitconfig-personal
주의사항
- 경로는 반드시
/를 사용합니다. - 경로 끝에
/를 포함합니다.
3-3. 폴더 구조 예시
C:\proj → 회사 프로젝트
C:\proj-test → 개인 프로젝트
3-4. 적용 확인
git config user.name
git config user.email
폴더 위치에 따라 자동으로 값이 변경되면 정상입니다.
4 실제 사용 흐름
이 설정 이후에는 다음만 신경 쓰면 됩니다.
프로젝트 생성 시
- 올바른 폴더에 위치시키기
- remote만 계정에 맞게 설정
평소 작업 시
아무 설정 없이 그대로 사용합니다.
5 안 했을 때 문제
이 설정을 하지 않으면 다음 문제가 발생할 수 있습니다.
HTTPS 인증으로 계정이 랜덤하게 섞임
잘못된 계정으로 push 시도
커밋 작성자가 뒤섞임
협업 시 기록 추적 어려움
핵심 정리
- SSH 키로 계정 인증을 분리합니다.
- remote로 어떤 계정에 push할지 결정합니다.
- 폴더 기준으로 커밋 계정이 자동 설정됩니다.
결과적으로 프로젝트 위치만 맞으면 계정, 인증, 커밋이 전부 자동으로 맞춰집니다. 이 세팅은 한 번만 해두면 이후에는 신경 쓸 일이 거의 없습니다.