Git 허브 local, global 설정을 구분하여 한 컴퓨터에 2계정 사용하기 (깃허브 이메일이 프라이빗 처리된 경우)
한 컴퓨터에 계정을 2개 사용하고 싶은 경우 아래와 같이 사용하면 된다.
https://it-timehacker.tistory.com/495
ssh key써서 하나의 컴퓨터에서 여러계정 git 사용하기
1. ssh 키 생성 + 깃허브에 등록 2. ssh 경로에 들어가서 config 수정 cd ~/.ssh/ cat config 3. config에 다음과 같이 추가 (Iendtitiy file에 등록한 퍼블릭키에 매칭되는 프라이빗키 위치 넣기) host github.com-username
it-timehacker.tistory.com
근데 이렇게 하더라도 꼬이는 경우가 존재한다.
분명 내 깃허브와 연동된 ssh키를 사용한 것을 확인하였고 연결체크도 잘되었는데 다른 계정으로 계속 push가 된다.
내 상황은 특정 컴퓨터에서 몇개의 깃허브 레포만 다른 계정으로 관리하고 싶은 상황.
이럴때 확실한 처리를 하기 위해서는 특정 브랜치 기준으로 깃허브 기준 이메일을 세팅해 주면된다.
근데 나는 깃허브에 이메일을 프라이빗으로 해두었기 때문에
깃허브의 이메일 세팅에 먼저들어간 후
Not visible in emails
This email will not be used as the 'from' address for web-based Git operations, e.g., edits and merges. We will instead use
위와 같이 이메일을 실제로 접속할 때 어떤 주소를 넣어야 하는지를 가져와야 한다.
아무래도 해당 설정 때문에 기존에 하던 방식이 안 먹혔던거 같기도 하다.
# 특정 리포지토리 내에서만 적용
cd ~/projects/my-personal-project
git config user.name "유저 이름"
git config user.email "깃허브 이메일창에서 main으로 세팅된 계정, 프라이빗일 경우 별도 확인 필요"
이렇게 해두면 해당 로컬 위치에서만 해당 깃허브 계정이 연결된다.
다른 프로젝트에서는
git config --global user.name
git config --global user.email
위와 같이 글로벌 git config가 적용되게 되며
로컬 설정을 한 경로에서 git config를 다음과 같이 살펴보게 되면
cat .git/config
글로벌 config와 다른 따로 설정한 깃허브 정보가 설정 됨을 알 수 있다.