(Mac OS) 디렉토리별로 Git 계정 다르게 설정하기
업데이트:
개인 개발 공부 프로젝트에는 개인 Git 계정을,
회사 개발 프로젝트에는 회사 Git 계정을 사용해야 한다.
매번 Git 설정을 바꾸기 귀찮아, 디렉토리 별로 Git 계정이 다르게 설정되도록 하려고 한다.
- Global(전역) Git 계정 : a계정
- Local(특정 디렉토리) Git 계정 : b계정
위와 같이 설정하려 한다. 즉,
- A디렉토리
- B디렉토리
와 같이 A 디렉토리
하위에 B 디렉토리
가 있을 때,
- A디렉토리 : a계정
- B디렉토리 및 하위 디렉토리 : b계정
위와 같이 Git 계정이 설정되도록 설정하려 한다.
Global Git계정 설정
Global Git 계정 설정을 해보자.
$ sudo vim ~/.gitconfig
위의 명령어로 .gitconfig
파일을 열어, 아래와 같이 수정한다.
[user]
email = ${a계정 email}
name = ${a계정 name}
[includeIf "gitdir:${B디렉토리 경로}"] # 마지막이 "/"로 끝나도록 한다. 세미콜론(:) 뒤에 공백이 없도록 한다.
path = ${B디렉토리 및 하위 디렉토리에 대한 .gitconfig 설정파일 이름}
[core]
eol = lf # OS CRLF 처리 방식이 달라 발생할 수 있는 문제에 대한 설정
autocrlf = input # OS CRLF 처리 방식이 달라 발생할 수 있는 문제에 대한 설정
B디렉토리 및 하위 디렉토리에 대한 .gitconfig 설정파일 생성
$ sudo vim ${B디렉토리 및 하위 디렉토리에 대한 .gitconfig 설정파일 이름}
위의 명령어로 파일을 생성해, 아래와 같이 작성한다.
[user]
email = ${b계정 email}
name = ${b계정 name}
특정 디렉토리에 대한 설정(여기서는 B디렉토리에 대한 설정)은 Global 설정을 무시한다.
credential-osxkeychain 확인
$ git credential-osxkeychain
위의 명령어를 입력해, credential-osxkeychain
이 존재하는지 확인한다.
존재한다면, 위와 같이 출력된다.
위와 같이 출력되지 않는다면, Git을 재설치 해 보길 바란다.
keychain 등록
$ git config --global credential.helper osxkeychain
위의 명령어를 입력한다.
Git에 osxkeychain
을 설정하는 명령어다.
위의 명령어를 입력하고 나면,
위와 같이 [credential]
항목이 추가된다.
적용 확인
이제 A디렉토리
, B디렉토리
각각에 있는 git repository에 가보자.
$ git config user.name
$ git config user.email
위의 명령어들을 입력해, 해당 repository에 적용되어있는 Git 계정을 확인해 보자.
push/pull을 시도하면
- username
- password
를 입력하라는 창이 뜰 것이다.
username은 GitHub 등의 username을 입력하면 된다.
password는 GitHub 등에서 발급받은 Personal Access Token
을 입력하면 된다.
그러면 이 값들이 mac의 키체인에 자동으로 저장될 것이다.
댓글남기기