저번 포스팅에서는 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
를 눌러 조회를 완료한다.
📌 참고 자료
'개발자 도구 > Git' 카테고리의 다른 글
[Git] git 명령어 시 한글 깨짐 문제 (1) | 2023.08.01 |
---|---|
[Git]main, origin, remote, HEAD 의미 (0) | 2023.07.31 |
Git) local repository의 상태 3가지 (feat. remote) (0) | 2023.07.24 |
[Git] git config로 alias 단축어 설정하기 (0) | 2023.04.05 |
[Git] git의 개념과 작업 흐름(workflow)에 대하여 (2) | 2023.04.01 |
댓글