본문 바로가기
개발자 도구/Git

[Git] git config로 사용자 정보 설정하기 - 등록/조회/삭제

by Dev.Andy 2023. 4. 1.

저번 포스팅에서는 git의 전체적인 흐름에 대해 알아 보았다. 이번에는 실제로 git의 작동 방법에 대해 알아 볼건데, 그 중 첫 번째로 git의 사용자 정보를 설정해 보자.

 

git을 사용하기 위해서는 git의 사용자에 대한 정보를 등록해야 된다. 또한 등록한 정보를 조회하거나 삭제할 때도 있다. git config를 통해 이를 설정해 보자. 많은 설정 옵션이 있지만, 자주 쓰이는 것들에 대해 알아 보자.

 

📌 정의

git config는 말 그대로 git repository(저장소)의 사용자에 대한 환경 설정을 하는 명령어이다 config는 configure라는 영단어의 줄임말로, '(컴퓨터의) 환경을 설정하다'라는 뜻이다.

 

환경 설정 중에도 주로 저장소의 사용자 이름(user.name)이나 이메일(user.email)을 등록/조회/삭제하는 용도로 많이 쓰인다.

이렇게 설정된 이름과 이메일은 git commit을 통해 현재 저장소의 상태를 기록했을 때 이름과 이메일이 남게 된다.

 

📌 설정 파일과 우선 순위

아래와 같이 크게 3가지의 우선 순위가 있다. 각 옵션에 따라 그에 해당하는 설정 파일에 정보가 입력 된다.

(1) git config --local

현재 작업 중인 저장소에 적용한다. 또한 저장소의 .git/config에 정보가 저장된다.

git config --local

1순위로 적용되며, git을 사용하는 디렉토리에 이동해야 이 옵션을 사용할 수 있다.

git config

또한, --local기본값이어서 별다른 옵션을 넣지 않으면 자동으로 --local이 적용된다.

(2) git config --global

현재 사용자에게만 적용되며 해당 사용자의 모든 저장소(git repository)에 적용할 수 있는 옵션이다. 또한 ~/.gitconfig에 정보가 저장된다.

git config --global

2순위로 적용이 되고, 딱 1번만 입력하면 로그아웃하여 다른 이용자로 로그인하지 않는 한 계속 같은 정보가 유지된다.

(3) git config --system

현 시스템(운영체제)의 모든 사용자와 모든 저장소에 적용되는 옵션이며, /etc/gitconfig에 정보가 저장된다.

git config --system

3순위로 적용되며 현재의 시스템을 바꿔버리지 않는 한 같은 정보가 유지된다. 단, 이를 수정하려면 시스템의 관리자 권한이 필요하다.

 

📌 사용자 정보 설정(이름과 이메일)

(1) git config user.name

git 이용자의 이름을 입력할 수 있도록 하는 옵션이다.

git config --global user.name "Andy"

앞서 배운 --global을 같이 적용해 봤는데, 현재 사용자의 모든 저장소에 사용자의 이름이 설정 되었다.

(2) git config user.email

git 이용자의 이메일을 입력할 수 있도록 하는 옵션이다.

git config user.email "andy@example.com"

이번에는 옵션 없이 git config를 했는데 이러면 기본값인 --local이 적용되어 현재 작업 중인 저장소에만 이메일이 설정 되었다.

 

📌 설정 조회

git config -list

현재 git repository에 대한 환경 설정 정보를 모두 확인할 수 있는 옵션이다.

위의 설정 파일 옵션을 추가로 두어서 각 옵션에 따라서도 설정을 조회할 수 있다.

git config --list  // 현재 저장소에 대한 설정 조회
git config --global --list // 현재 사용자에 대한 설정 조회

 

.
.
.
init.defaultbranch=main
.
.
.
core.precomposeunicode=true
user.name=Andy // 설정이 되어 있으면 있을 것이다.
user.email=andy-archive@example.com // 설정이 되어 있으면 있을 것이다.
(END)

q를 누르면 현재 조회하는 상태에서 빠져 나올 수 있다.

 

📌 설정 삭제

git config --unset

주어진 옵션에 대한 변수를 삭제하는 옵션이다.

만약 아래처럼 할 경우 기본값이 --local이기에 현재 저장소에 대한 사용자 이름이 삭제된다.

git config --unset user.name

실제로 지워졌는지 한번 조회해 보자.

git config --list

user.name이 사라졌을 것이다.

.
.
.
core.precomposeunicode=true
(END)

 

📌 실제 사용

저장소에 대하여 사용자의 이름과 이메일을 등록해 보고 이를 조회해 보자.

아래와 같이 입력 해 보자. 입력한 동일한 값의 명령어가 출력될 것이다. 그러면 성공적으로 등록이 된 것이다.

git config user.name "Andy"
git config user.email "andy-archive@example.com"

 

한번 조회해 보자.

git config --list

 

.
.
.
user.name=Andy
user.email=andy-archive@example.com
(END)

 

성공적으로 잘 등록 되었으니 q를 눌러 조회를 완료한다.

 

📌 참고 자료

댓글