거의 알고리즘 일기장
폴더별로 github 계정 나눠놓기 (ssh, github 계정, macos 기준) 본문
회사마다 다르겠지만, 대부분은 회사 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 를 선택하면 된다.
이렇게 하면 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 |