Git은 리누스 토발즈(Linus Torvalds)가 리눅스 커널 개발을 지원하기 위해 만든 분산 버전 관리 시스템(DVCS)입니다. 초기에는 단순한 도구였지만, 현재는 전 세계 개발자들이 가장 많이 사용하는 버전 관리 시스템으로 성장했습니다.
Git을 사용하면 여러 사용자가 하나의 프로젝트에 동시에 기여할 수 있고, 변경 이력을 추적하고, 이전 버전으로 되돌리며, 다양한 프로젝트 버전을 위해 브랜치를 생성할 수도 있습니다. 바로 이러한 특성 때문에 각 커밋(commit)이 누구에 의해 이루어졌는지 추적할 수 있도록 사용자 이름과 이메일을 미리 설정해 두는 것이 매우 중요합니다.
이 가이드에서는 Git 설치 후 시작 단계에서 꼭 알아야 할 기본 설정 방법, 특히 사용자 이름과 이메일을 설정하는 과정을 자세히 안내합니다.
참고: 이 튜토리얼은 우분투를 기준으로 작성되었지만, 설명하는 절차는 운영체제와 무관하게 동일하게 적용됩니다.
전역(Global) Git 사용자 이름 및 이메일 설정 방법
Git을 설치한 후에는 사용자 이름과 이메일 주소를 설정해야 합니다. Git은 모든 프로젝트에 공통으로 적용되는 전역(global) 계정 정보를 설정하거나, 특정 저장소에만 적용되는 로컬(local) 계정 정보를 설정할 수 있습니다.
Git 계정 정보를 설정하려면 git config 명령어를 사용합니다. git config는 Git 변수를 조회하고 설정할 수 있는 내장 도구입니다.
우분투에서 Git 설정 파일은 다음 위치에 저장됩니다:
- /etc/gitconfig – 시스템의 모든 사용자와 해당 저장소에 적용되는 Git 설정을 저장합니다.
- ~/.gitconfig – 홈 디렉터리에 위치한 .gitconfig 파일로, 특정 사용자의 Git 설정을 저장합니다.
- .git/config – 로컬 저장소별 Git 설정을 저장합니다.
현재 설정된 사용자 이름과 이메일을 확인하려면 아래 명령어를 실행하세요:
git config --list
위 명령어 실행 시 아무런 출력이 없다면, 사용자 이름과 이메일이 아직 설정되지 않은 것이므로 직접 설정해야 합니다.
전역 커밋 사용자 이름과 이메일을 설정하려면 다음 명령어를 입력하세요:
git config --global user.name "Username" git config --global user.email example@email.com
명령어가 정상적으로 실행되었다면, 아래 명령어로 설정값을 확인할 수 있습니다:
git config --list
명령어를 실행하면 다음과 유사한 출력 결과를 확인할 수 있습니다:
user.name=Username user.email=example@email.com
명령어 대신 설정 파일을 직접 편집하여 사용자 이름과 이메일을 추가할 수도 있습니다. 선호하는 텍스트 편집기로 "~/.gitconfig" 파일을 열어 내용을 추가하세요.
nano /home/ubuntu/.gitconfig
파일에 다음과 같이 항목을 추가합니다:
[user]
name = Username
email = example@email.com
파일을 저장한 후, git config 명령어를 실행하여 항목이 정상적으로 추가되었는지 확인하세요.
로컬(Local) Git 사용자 이름 및 이메일 설정 방법
Git은 특정 저장소에만 적용되는 로컬 사용자 이름과 이메일 설정도 지원합니다. 예를 들어 회사 프로젝트와 개인 프로젝트에 서로 다른 계정 정보를 사용하고 싶을 때 유용합니다.
로컬 설정을 하려면 저장소 디렉터리 안에서 --global 플래그 없이 git config 명령어를 실행하면 됩니다.
먼저 저장소로 사용할 디렉터리로 이동합니다:
cd ~/workspace
그다음, 아래 명령어로 해당 디렉터리를 Git 저장소로 초기화합니다:
git init .
저장소 내부에서 아래 명령어를 사용해 사용자 이름과 이메일을 설정합니다:
git config user.name "localusername" git config user.email "user@ubuntu.local"
변경 사항을 확인하려면 다음 명령어를 사용하세요:
cat .git/config
위 명령어는 로컬 저장소 내부의 .git 디렉터리에 있는 config 파일 내용을 출력합니다. Git은 특정 저장소의 설정을 .git/config 파일에 저장합니다.
출력 결과는 다음과 같습니다:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[user]
name = localusername
email = user@ubuntu.local
전역 설정과 로컬 설정을 모두 한 번에 보려면 git config --list 명령어를 사용하면 됩니다. 예시 출력은 다음과 같습니다:
user.name=Username user.email=example@email.com core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true user.name=Localusername user.email=user@ubuntu.local
유용한 git config 명령어 모음
git config 명령어는 사용자 이름과 이메일 외에도 다양한 Git 환경 설정에 활용할 수 있습니다.
예를 들어, 기본 Git 에디터를 설정하려면 다음 명령어를 사용합니다:
git config --global core.editor vim
vim 부분을 Emacs, nano 등 본인이 선호하는 에디터로 변경하면 됩니다.
또한 새 저장소 생성 시 사용되는 기본 브랜치 이름(기본값: "master")도 변경할 수 있습니다.
기본 init 브랜치 이름을 변경하려면 아래 명령어를 사용하세요:
git config --global init.defaultBranch initial
마찬가지로 "initial" 부분을 원하는 브랜치 이름으로 바꾸면 됩니다.
모든 설정이 제대로 적용되었는지 아래와 같이 확인할 수 있습니다:
user.name=Username user.email=example@email.com core.editor=vim init.defaultbranch=initial core.repositoryformatversion=0 core.filemode=true core.bare=false core.logallrefupdates=true user.name=Localusername user.email=user@ubuntu.local
마무리
Git은 사용자가 작업을 효율적으로 관리하고, 다른 사람과 협업하며, 결과물을 공유할 수 있게 해주는 훌륭한 도구입니다. Git을 더욱 효율적으로 활용하려면 Git Alias를 사용해 워크플로우를 개선하거나, 로컬 및 원격 브랜치 삭제 방법을 익혀보는 것도 좋습니다.