Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- import
- Windows 10
- context
- web.xml
- Source
- Quartz
- 단축키
- profile
- find
- xargs
- netsh
- tomcat
- grep
- Mac
- JavaScript
- resource
- port
- lsof
- 줄바꿈 문자
- bash
- 네트워크
- Windows
- ssh
- plugin
- VirtualBox
- Eclipse
- vscode
- IntelliJ
- maVen
- GIT
Archives
- Today
- Total
develog
[mac] 디렉토리별로 github 계정 분리하기 (개인용, 업무용) 본문
개요
- ssh 설정
1.1. 개인용, 업무용 ssh key 를 각각 하나씩 생성한다
1.2. 생성한 ssh key 중에서 public key 를 github 사이트에 등록한다
1.3. ssh config 파일에 github 호스트를 설정한다 - git config 설정
2.1. git config 로 global user 를 설정한다
2.2. 특정 디렉토리에서 사용할 git user 를 설정한다
2.3. 특정 디렉토리와 그 외 디렉토리에서 git user 가 다르게 표시되는지 확인한다
1.1. 개인용, 업무용 ssh key 생성 (public, private)
# 개인용 id_rsa-personal
$ ssh-keygen -t rsa -b 4096 -P '' -C 'github-personal@office-mac' -f ~/.ssh/id_rsa-personal
# 업무용 id_rsa-company
$ ssh-keygen -t rsa -b 4096 -P '' -C 'github-company@office-mac' -f ~/.ssh/id_rsa-company
1.2. 생성한 ssh key 중에서 public key 를 github 사이트에 등록한다
- github.com > Settings > SSH and GPG keys > New SSH key > Title, Key 입력 > Add SSH key
# 개인용 pub key 클립보드로 복사 후
$ pbcopy < id_rsa-personal.pub
# github.com personal 계정에 SSH key 등록
Title: personal@office-mac
Key: <Paste>
# 업무용 pub key 클립보드로 복사 후
$ pbcopy < id_rsa-company.pub
# github.com company 계정에 SSH key 등록
Title: company@office-mac
Key: <Paste>
1.3. ~/.ssh/config 파일에 github 호스트를 설정한다
- github ssh 호스트 설정을 등록한다
- 개인용, 업무용 private key 파일을 다르게 설정한다
$ vi ~/.ssh/config
# 개인용
Host github-personal
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa-personal
IdentitiesOnly yes
# 업무용
Host github-company
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa-company
IdentitiesOnly yes
- 비밀번호 입력 없이 ssh 접속이 되는지 테스트한다
$ ssh -T git@github-personal
# Hi XXX! You've successfully authenticated, but GitHub does not provide shell access.
$ ssh -T git@github-company
# Hi XXX! You've successfully authenticated, but GitHub does not provide shell access.
2.1. git config 명령어로 global user 를 설정한다
- 개인용 계정을 global 로 등록
$ git config --global user.name personalId
$ git config --global user.email personalId@email.com
2.2. 특정 디렉토리에서 사용할 git user 를 설정한다
~/.gitconfig-company 파일 생성
- 업무용 계정을 별도 설정 파일에 만든다
$ vi ~/.gitconfig-company
[user]
name = companyId
email = companyId@email.com
~/.gitconfig 파일 수정
- 파일 마지막 부분에 업무용 설정파일 내용을 추가한다
$ vi ~/.gitconfig
# 아래 내용 추가
# includeIf 대소문자 주의
# 경로 마지막에 슬래시(/) 넣어야 동작함
# ~/develop/company/ 경로에서는 ~/.gitconfig-company 파일을 사용
[includeIf "gitdir:~/develop/company/"]
path = ~/.gitconfig-company
2.3. 특정 디렉토리와 그 외 디렉토리에서 git user 가 다르게 표시되는지 확인한다
개인용 프로젝트 생성후 git 사용자 확인
- 디렉토리 경로 주의 ~/develop/personal/
# 개인용 프로젝트 생성
$ mkdir -p ~/develop/personal/proj1
$ cd ~/develop/personal/proj1
$ git init # git init 을 해야 변경된 사용자 확인이 가능
# git 사용자 확인
$ git config --show-origin user.name
$ git config user.name
업무용 프로젝트 생성후 git 사용자 확인
- 디렉토리 경로 주의 ~/develop/company/
# 업무용 프로젝트 생성
$ mkdir -p ~/develop/company/proj1
$ cd ~/develop/company/proj1
$ git init # git init 을 해야 변경된 사용자 확인이 가능
# git 사용자 확인
$ git config --show-origin user.name
$ git config user.name
Comments