그냥 git config 와 –global 붙였을때의 차이가 뭐야?

git config 명령어에서 --global 옵션을 붙이느냐 안 붙이느냐의 차이는 설정 범위(scope)에 있습니다.

1. git config --global

  • 사용자 전체(Global scope)에 설정됩니다.

  • 사용자의 홈 디렉토리에 있는 ~/.gitconfig 파일에 저장됩니다.

  • 이 설정은 사용자가 작업하는 모든 Git 저장소에 공통 적용 됩니다.

예:

git config --global user.name "Alice"
git config --global user.email "alice@example.com"

→ 모든 저장소에서 기본적으로 이 이름과 이메일을 사용합니다.


2. git config (옵션 없이 사용)

  • 로컬 저장소(Local scope)에 설정됩니다.

  • 해당 Git 저장소 내부의 .git/config 파일에 저장됩니다.

  • 이 설정은 현재 저장소에만 적용 되고, 다른 저장소에는 영향을 주지 않습니다.

예:

git config user.name "Bob"
git config user.email "bob@example.com"

→ 오직 현재 디렉토리의 Git 저장소에만 이 이름과 이메일이 적용됩니다.


요약하자면:

명령어 설정 범위 저장 위치 적용 대상
git config --global 사용자 전체 ~/.gitconfig 모든 Git 저장소
git config 현재 저장소 .git/config 현재 Git 저장소

참고로

  • 이 외에도 --system이라는 옵션이 있는데, 이는 시스템 전체에 적용되는 설정입니다 (/etc/gitconfig). 일반 사용자가 건드릴 일은 거의 없습니다.

  • 우선순위는 system < global < local입니다. 즉, 로컬 설정이 글로벌 설정을 덮어씁니다.

의문 있으시면 더 질문 주세요.

Categories:

Updated: