git config의 범위 | --global
2025. 1. 22. 00:35ㆍBackend/Git, GitHub
git config --global user.email "global@example.com"
--global의 의미
- git config 명령어에서 설정의 범위(scope)를 정해주는 옵션
- 이 옵션을 사용하면, 해당 설정이 모든 깃 프로젝트(레포지토리)에 공통적으로 적용된다
- 즉, 컴퓨터 사용자 계정에 저장되는 전역 설정(global configuration)
- 보통 사용자 이름(user.name)과 이메일(user.email) 같은 사용자 정보 설정에 사용된다
다른 설정 범위
깃은 총 3가지 설정 범위를 제공한다:
- --local (기본값)
- 특정 프로젝트(레포지토리)에만 적용
- 설정 정보는 해당 레포지토리 폴더 안의 .git/config 파일에 저장
- --global
- 네 컴퓨터에서 모든 레포지토리에 적용
- 설정 정보는 사용자 계정의 전역 설정 파일(~/.gitconfig)에 저장
- --system
- 시스템 전체에 적용 (모든 사용자 계정과 레포지토리)
- 설정 정보는 시스템 설정 파일(/etc/gitconfig)에 저장
설정 우선순위
깃은 설정이 겹칠 때 우선순위를 따져서 적용한다:
- --local (가장 우선)
- --global
- --system (가장 낮음)
즉, 한 레포지토리에 --local 설정이 있으면, --global 설정은 무시된다.
예를 들어:
- --local: user.email = local@example.com
- --global: user.email = global@example.com
→ 해당 레포지토리에서는 local@example.com이 적용된다.
왜 --global을 많이 쓰는 걸까?
- 사용자 정보(user.name, user.email)는 거의 모든 프로젝트에서 공통으로 사용되기 때문이다.
- 한 번만 설정하면 여러 프로젝트에서 따로 설정할 필요가 없어서 편리하다.
결론
- --global은 모든 레포지토리에 공통으로 적용되는 전역 설정을 의미한다.
- 설정 정보는 네 컴퓨터의 ~/.gitconfig 파일에 저장되고, 다른 설정(--local이나 --system)이 우선하지 않는 한 기본으로 사용된다.