Git 전역 설정: 처음 딱 한 번 해두면 되는 것들

git config --global로 설정하는 사용자 정보, 기본 브랜치, 에디터, 줄 끝 처리까지 — Git을 시작하기 전 꼭 해둬야 할 설정을 정리한다.

· 5 min read · PALDYN Team

지난 글에서 Git을 설치했다. 이제 Git에게 자신이 누구인지 알려줄 차례다. 이름과 이메일을 설정하지 않으면 첫 커밋에서 오류를 만나거나, 커밋 로그에 엉뚱한 작성자가 기록된다. 처음에 딱 한 번만 설정하면 된다.

설정 레벨: system, global, local

Git 설정에는 세 가지 범위가 있다. 좁은 범위가 넓은 범위를 덮어쓴다.

Git 설정 레벨

  • system: /etc/gitconfig — 이 머신의 모든 사용자에게 적용
  • global: ~/.gitconfig — 내 계정의 모든 저장소에 적용 (가장 자주 사용)
  • local: .git/config — 해당 저장소에만 적용 (기본값)

일반 개발자는 global 레벨을 주로 사용한다. 특정 프로젝트에서 회사 이메일 대신 개인 이메일을 쓰고 싶다면 local로 덮어쓸 수 있다.

필수 설정: 이름과 이메일

커밋에 기록되는 작성자 정보다. GitHub, GitLab 계정과 일치시키는 것을 권장한다.

git config --global user.name "홍길동"
git config --global user.email "hong@example.com"

실제 이름 대신 닉네임을 써도 기술적으로는 문제없다. 단, GitHub에서 커밋과 계정을 연결하려면 GitHub 계정에 등록된 이메일과 일치해야 한다.

필수 전역 설정

기본 브랜치 이름

Git 2.28부터 git init 시 생성되는 기본 브랜치 이름을 설정할 수 있다. GitHub의 기본값인 main으로 맞춰두는 것이 편하다.

git config --global init.defaultBranch main

이 설정 전에 만든 저장소는 master 브랜치를 사용하고 있을 수 있다. 이미 생성된 저장소의 브랜치 이름을 바꾸려면 별도 작업이 필요하다.

에디터 설정

git commit 이나 git rebase -i 를 실행하면 에디터가 열린다. 원하는 에디터를 미리 지정한다.

# VS Code
git config --global core.editor "code --wait"

# Vim (기본값)
git config --global core.editor "vim"

# nano (초보자 친화적)
git config --global core.editor "nano"

# Neovim
git config --global core.editor "nvim"

--wait 플래그는 VS Code가 파일을 닫을 때까지 Git이 기다리도록 한다. 없으면 VS Code가 열리는 순간 Git이 빈 메시지로 진행한다.

줄 끝(Line Ending) 처리

Windows와 macOS/Linux는 줄 끝 문자가 다르다. 팀이 혼합 환경이라면 충돌을 예방하기 위해 설정한다.

# macOS / Linux
git config --global core.autocrlf input
# 체크아웃 시 변환 없음, 커밋 시 CRLF → LF 변환

# Windows
git config --global core.autocrlf true
# 체크아웃 시 LF → CRLF, 커밋 시 CRLF → LF 자동 변환

색상 출력 활성화

대부분의 최신 Git은 자동으로 켜져 있지만, 명시적으로 활성화할 수 있다.

git config --global color.ui auto

현재 설정 확인 및 수정

# 모든 global 설정 보기
git config --global --list

# 특정 키 값 확인
git config --global user.name

# 특정 설정 삭제
git config --global --unset core.editor

# 에디터로 직접 열기
git config --global --edit

~/.gitconfig는 일반 텍스트 파일이라 에디터로 직접 편집해도 된다.

작업별 이메일 분리

여러 GitHub 계정(회사·개인)을 사용한다면 저장소별로 다른 이메일을 쓸 수 있다.

# 특정 저장소에서만 다른 이메일 사용
cd ~/work/company-project
git config --local user.email "work@company.com"
# .git/config에 저장됨 — global 설정을 덮어씀

또는 ~/.gitconfig에 디렉토리 조건부 설정을 추가할 수 있다.

# ~/.gitconfig
[includeIf "gitdir:~/work/"]
    path = ~/.gitconfig-work

# ~/.gitconfig-work
[user]
    email = work@company.com
    name = 홍길동 (Work)

~/work/ 하위의 모든 저장소에서 자동으로 work 설정이 적용된다.

설정을 마쳤으면 이제 실제로 저장소를 만들거나 복제할 준비가 됐다. 다음 글에서는 자주 쓰는 명령어를 단축해주는 alias 설정을 다룬다.


지난 글: Git 설치 가이드

다음 글: Git 단축 명령어(alias) 설정


읽어주셔서 감사합니다. 😊