거의 알고리즘 일기장

폴더별로 github 계정 나눠놓기 (ssh, github 계정, macos 기준) 본문

잡담

폴더별로 github 계정 나눠놓기 (ssh, github 계정, macos 기준)

건우권 2025. 5. 23. 21:12

회사마다 다르겠지만, 대부분은 회사 github 계정이 따로 만들어져 있을것이다.

 

이때, 분명 특정 폴더 같은 경우에는 회사 프로젝트만 있고 특정 폴더에는 개인 프로젝트들로 나누어 두었을텐데, 이때 이런니즈가 있을것이다.

- projects/my 에는 내 github 계정 사용

- projects/company 에는 회사 github 계정 사용

 

항상 세팅할때마다 블로그를 찾아봤는데, 귀찮아서 내 블로그에 정리해두려고 한다.

찾을때마다 귀찮..


크게 2가지 섹션으로 생각하면 된다.

 

1. ssh 만들고 등록 (ssh-keygen 으로 만들고 github에 공개키 등록)

2. .gitconfig 설정 (특정 폴더에서 적절한 displayname 찾아가도록)

 

ㄱㄱㄱㄱㄱ

 

1. ssh 만들고 등록 

ssh는 만들기 간단하다. ssh-keygen을 사용하면 된다. (이거 os에 기본적으로 포함되어 있는 명령어임, rsa말고 다른거 써도 됨.)

# 이런식으로 만들면 됩니당
ssh-keygen -t rsa -C "식별자넣으세요" -f "id_rsa_my"
ssh-keygen -t rsa -C "식별자넣으세요" -f "id_rsa_company"

 

이렇게 만들면 기본적으로 루트에 있는 ~/.ssh 숨김폴더에 추가된다. 

 

위의 명령어를 실행했으면 

~/.ssh/id_rsa_my

~/.ssh/id_rsa_my.pub

~/.ssh/id_rsa_company

~/.ssh/id_rsa_company.pub

이렇게 추가된것을 볼수 있을것이다.

 

그 이후에는 우리는 ssh client의 동작을 개별 설정할것이기 때문에 config라는 파일을 추가로 만들어줘야 한다.

~/.ssh/config 를 생성하고 그 안에 이렇게 입력한다.

#company id에 대한 SSH 설정
Host github.com-company
    HostName github.com
    User kk-com
    IdentityFile ~/.ssh/id_rsa_company

#개인계정에 대한 SSH 설정
Host github.com-my
    HostName github.com
    User kk-home
    IdentityFile ~/.ssh/id_rsa_my

 

자 이제 거의 1번은 완료되었다. 다음은 github에 공개키를 올리면 된다. (pub 파일)

 

github 페이지 -> profile 이미지 클릭 -> Settings -> SSH and GPG keys -> new SSH keys 를 선택하면 된다.

Settings 안 SSH and GPG keys 누르면됨.

 

new SSH key 클릭
이 안에 .pub에 있는값을 그냥 복붙하면 됨.

 

이렇게 하면 git remote를 ssh로 바꾸면 됨. 그리고 아까 Host를 어떻게 설정했는지 보고 붙여줘야 한다.

 

우리가 설정한것에 대한 예시는 아래와 같을것이다.

원래 -> git@github.com:쌸라쌸라

Host 교체 후-> git@github.com-my:쌸라쌸라

 

이제 github 기능을 사용은 가능할것이다!

완전히 해결 되었을까?

 

사용은 가능하나 짜증난 부분이 있을것이다. 

회사 계정으로 커밋을 했는데, 응? 내 github의 displayname이 찍히네?.. ㅠ

 

이제 이 부분을 바꿔보자


2. .gitconfig 설정 (특정 폴더에서 적절한 displayname 찾아가도록)

이 부분은 더 간단하다.

 

루트로 다시 가서 .gitconfig를 보면 아마 이런식으로 되어있을것이다.

[user]
	email = 이메일이당
	name = 네임이당
[github]
	user = 네임이당

 

자 이부분도 바꿔주면 된다.

 

내 경우에는 룰이 

~/projects/company에만 회사 github 계정의 displayname으로 commit author가 찍히기만 하면 되었다. 

 

자 그러면 .gitconfig를 이렇게 바꿔두자

[includeIf "gitdir:~/Projects/company/"]
    path = .gitconfig-work
[includeIf "gitdir:~/Projects"] 
    path = .gitconfig-my

 

다음은 .gitconfig-work, .gitconfig-my를 만들고 적절히 user, github를 추가하면 된다.

(당연히, 적절한값을 github에서 찾아서 넣어줘야함)

//.gitconfig-work
[user]
	email = 네이바@네이바
	name = 쿠쿠
[github]
	user = 쿠쿠
    
//.gitconfig-my
[user]
	email = 구글@구글
	name = 쿠쿠
[github]
	user = 쿠쿠

 

자 이제 완료다. 이제 즐기면 된다. 딱 한번만 하면, 컴퓨터를 새로사거나 이직하지 않는 이상은 건들일 없다.

되었다~

 

 

반응형

'잡담' 카테고리의 다른 글

인프콘 발표 후기  (3) 2024.08.03
데이터독 최고이~  (0) 2024.06.22
나의 우상 침착맨의 그림강의... 제가한번 실습해보겠습니다.  (0) 2023.03.15
전세사기를 피할수 있는법  (1) 2023.03.15
1년만에 본 코테  (0) 2022.02.04
Comments