분명 코딩을 배우러 왔는데, 난생처음 보는 까만 터미널 창을 마주하면 덜컥 겁부터 납니다.
다들 '깃, 깃' 하면서 중요하다고 말하지만, 정작 검은 화면에 무엇을 쳐야 할지 막막하기만 하죠.
처음 개발을 공부할 때 저 역시 똑같은 의문이 있었습니다.
"코드를 그냥 폴더째 복사해서 날짜별로 압축해 두면 그만인데, 왜 굳이 이런 복잡한 도구를 공부해야 하지?"라며 한참을 헤맸습니다.
결론부터 말씀드리면, Git은 코드 복사 지옥에서 여러분을 구출해 줄 가장 확실한 도구입니다.
왜 Git을 배워야 하는지 핵심 개념부터 짚어보고, 내 컴퓨터에 설치해 첫 사용자 설정을 완료하는 전 과정을 세세하게 정리해 드리겠습니다.

파일 복사 지옥에서 탈출하기: 버전 관리의 진짜 이유
문서나 기획서, 혹은 디자인 작업을 할 때 흔히 만드는 파일들이 있습니다.
- 기획서.docx
- 기획서_최종.docx
- 기획서_진짜최종.docx
- 기획서_진짜진짜최종_이게마지막.docx
이 파일 이름들은 소스코드를 작성할 때도 똑같은 형태로 우리를 괴롭힙니다.
어제까지는 분명 잘 작동하던 코드였는데, 오늘 새 기능을 덧붙이다가 갑자기 전체 시스템이 고장 나는 일은 흔히 벌어지죠.
이럴 때 우리는 "어제 작동하던 깔끔한 코드로 돌아가고 싶다"고 간절히 생각하게 됩니다.
그렇다고 코드가 들어있는 폴더 전체를 매번 날짜별로 압축해서 보관하는 방식은 저장공간 낭비도 심하고 매우 비효율적입니다.
Git은 이 번거로운 이력 관리를 컴퓨터가 알아서 기록해 주는 '코드 시간 여행기'입니다.
파일의 변경 내역을 차곡차곡 기록해 두었다가, 필요할 때 원하는 과거의 어떤 시점으로든 코드를 안전하게 되돌려 줍니다.

화가 난 천재가 단 2주 만에 만든 기적: Git의 탄생 배경
현재는 Git이 사실상 버전 관리 시스템의 유일한 표준이지만, 이전에는 다른 패러다임의 도구들이 존재했습니다.
과거 도구들과의 비교를 통해 Git의 설계가 왜 훌륭한지 이해할 수 있습니다.
리눅스의 아버지가 직접 설계한 버전 관리 시스템
Git은 리눅스(Linux) 운영체제를 개발한 리누스 토르발스(Linus Torvalds)가 2005년에 만들었습니다.
당시 리눅스 오픈소스 진영은 'BitKeeper'라는 상용 도구를 지원받아 코드를 관리하고 있었는데, 이 도구의 무료 사용권이 갑자기 박탈당하는 일이 생겼죠.
이때 리누스 토르발스는 결심합니다.
"기존에 존재하던 도구들은 내 프로젝트 규모를 다루기에 성능이 너무 느리다. 차라리 직접 만들겠다."
그리고 리눅스 개발팀과 코딩에 돌입한 지 단 2주 만에 Git의 기초 뼈대를 완성했습니다.
대규모 오픈소스 프로젝트를 초고속으로 안정적으로 처리할 수 있게 설계된 아키텍처가 지금까지 이어져오고 있습니다.
중앙 서버(SVN) vs 분산형(Git)
Git 이전에는 SVN(Subversion)이나 CVS 같은 중앙집중식 도구들이 실무를 지배했습니다. 지금도 오래된 레거시 시스템에서는 종종 SVN을 사용합니다.
둘의 가장 결정적인 차이는 '기록을 저장하는 위치'입니다.
-
SVN (중앙집중식)
모든 코드 변경 이력이 오직 단 하나의 중앙 서버에만 기록됩니다. 개발자는 중앙 서버에서 코드를 받아 작업한 뒤 다시 서버로 업로드합니다.
한계: 서버가 다운되거나 인터넷 연결이 끊기면 과거 코드를 열어볼 수 없으며, 여러 사람의 코드를 병합하는 작업이 매우 무겁고 번거롭습니다.
-
Git (분산형)
원격 서버에 코드를 공유하는 것은 동일하지만, 프로젝트를 받아온 모든 개발자의 컴퓨터(로컬)에 전체 코드 변경 이력이 통째로 복제됩니다.
장점: 인터넷이 차단된 오프라인 환경에서도 로컬에서 즉시 버전을 기록하고 과거 이력을 조회할 수 있습니다. 중앙 서버가 통째로 유실되더라도 개발자 중 한 명의 데이터만 있으면 완벽하게 복구할 수 있습니다.
| 비교 항목 | 중앙집중식 (SVN) | 분산형 (Git) |
|---|---|---|
| 이력 저장소 | 오직 하나의 중앙 원격 서버 | 로컬 PC 및 원격 서버 모두에 전체 복제 |
| 오프라인 작업 | 불가능 (네트워크 연결 필수) | 가능 (로컬 기록 후 사후 전송) |
| 속도와 성능 | 느림 (명령 수행 시 매번 서버 통신) | 매우 빠름 (대부분 로컬에서 즉시 실행) |
| 장애/유실 리스크 | 매우 높음 (서버 손실 시 모든 이력 유실) | 매우 낮음 (로컬 복제본으로 복구 가능) |
| 브랜치 병합 | 느리고 충돌 위험이 높음 | 매우 가볍고 유연한 자동 병합 지원 |

이러한 속도와 안정성의 우위 덕분에 Git은 SVN을 빠르게 밀어내고 글로벌 표준으로 자리 잡았습니다.
카메라와 인스타그램: Git과 GitHub가 완전히 다른 이유
처음 입문할 때 이 둘을 혼동하는 경우가 많습니다. "내 컴퓨터에 깃허브 깔았어"라고 말하기도 하지만, 둘은 명확히 구분됩니다.
- Git: 내 컴퓨터의 디렉토리 안에서 코드의 버전 이력을 기록하는 로컬 프로그램입니다.
- GitHub: Git으로 기록한 소스코드와 일기장을 웹에 올려서 전 세계 개발자들과 공유하고 협업할 수 있게 해주는 클라우드 웹 서비스입니다.
쉽게 비유하자면, Git은 내 휴대폰에 내장된 '카메라 앱'이고, GitHub는 찍은 사진을 올리는 '인스타그램'과 같습니다.
카메라 앱이 없으면 인스타그램에 새 사진을 올릴 수 없듯이, 내 컴퓨터에 로컬 엔진인 Git이 먼저 깔려 있어야 클라우드 서비스인 GitHub도 정상적으로 활용할 수 있습니다.

2026년 기준 최신 기술 정보
현재 Git의 공식 최신 안정 버전은 v2.54.0(2026년 4월 릴리즈)입니다. 또한, 올해 말 보안성과 내부 성능을 대폭 강화한 대규모 넘버링 업데이트인 Git 3.0 출시가 다가오고 있습니다. 기존 SHA-1의 취약점을 해결하기 위해 SHA-256 알고리즘이 기본 저장 형식으로 전환될 예정입니다.
내 컴퓨터에 Git 제대로 심기: OS별 상세 설치 가이드
Git을 설치하는 과정입니다. Windows와 macOS로 나누어 꼼꼼하게 정리했습니다.
Windows 환경에서 설치 시 꼭 챙겨야 할 핵심 옵션
- Git 공식 홈페이지에 접속해 최신 Windows용 설치 파일을 다운로드합니다.
- 다운로드한
.exe파일을 실행해 설치 마법사를 켭니다. - 설치 진행 중 무수히 많은 영어 설정 창들이 나타납니다. 대부분 기본값으로 진행해도 문제가 없지만, 다음 4가지 옵션은 직접 확인하고 지정하시는 것이 실무에 편리합니다.
-
Choosing the default editor (기본 에디터)
기본 설정은 유서 깊은 터미널 에디터인
Vim으로 되어 있습니다. 하지만 입문자가 Vim 명령어를 익히기엔 벽이 높으므로, 드롭다운에서 여러분이 주로 사용하는 에디터인 Visual Studio Code를 선택하는 것을 권장합니다. -
Adjusting the name of the initial branch (기본 브랜치 이름)
과거에는 최초 생성되는 저장 공간의 기본 이름이
master였으나, 현재 글로벌 협업 표준은main입니다. 두 번째 라디오 버튼인 'Override the default branch name for new repositories'를 고르고 입력칸에main을 적어줍니다. -
Adjusting your PATH environment (경로 설정)
중간 선택지인 'Git from the command line and also from 3rd-party software'(기본값)를 선택해야 나중에 VS Code나 다른 서드파티 개발 툴들이 우리 시스템의 Git 경로를 올바르게 인식합니다.
-
Choosing HTTPS transport backend (자동 로그인 헬퍼)
'Git Credential Manager' 옵션이 켜져 있는지 확인합니다. 나중에 GitHub 원격 연결 시 로그인 토큰 정보를 내 운영체제 보안 저장소에 기억시켜 매번 암호를 치는 번거로움을 원천적으로 제거해 줍니다.
설정이 끝나면 설치를 마칩니다. 시작 메뉴에서 'Git Bash'라는 프로그램을 실행할 수 있다면 Windows 환경 세팅은 끝났습니다.
macOS 환경에서 터미널과 패키지 매니저로 설치하기
macOS는 두 가지 방법 중 하나를 선택해 진행합니다.
방법 A: 터미널로 즉시 설치하기
맥의 기본 앱인 '터미널(Terminal)'을 실행한 후 git을 입력하고 엔터를 누릅니다.
컴퓨터에 Git이 없는 상태라면 macOS가 자동으로 감지하여 "명령어 라인 개발자 도구(Xcode Command Line Tools)가 필요합니다"라는 안내와 함께 설치 팝업창을 띄워줍니다. [설치] 버튼을 누르고 대기하면 설치가 끝납니다.
방법 B: Homebrew로 최신 안정 버전 설치하기 (권장)
맥의 패키지 관리 도구인 Homebrew가 이미 설치되어 있다면 터미널에 아래 명령어를 실행하여 최신 버전을 설치할 수 있습니다.
brew install git
맥(애플 실리콘) 환경 변수 설정 예시
애플 실리콘 맥북에서 Homebrew로 깃을 설치한 후command not found: git오류가 발생하는 경우가 있습니다. 이럴 때는 터미널에 아래 명령어를 실행하여 Homebrew 경로를 셸 설정에 추가하면 해결됩니다.echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc && source ~/.zshrc
설치 완료 후 터미널 창에 git --version을 실행하여 정상적으로 버전 번호가 나타나는지 검증합니다.
딱 한 번만 해두면 평생 편한 필수 사용자 등록
설치를 모두 마쳤다면, 이제 소스코드를 본격적으로 저장하기 전에 딱 하나 해야 할 일이 있습니다. 바로 깃에 사용자 정보(이름과 이메일)를 등록하는 것입니다.
이 설정을 하지 않으면, 나중에 첫 저장점(Commit)을 만들 때 깃이 "너는 누구니?" 하고 물어보며 작업을 거부하는 에러를 내뱉습니다.
맥의 터미널이나 윈도우의 Git Bash 창을 열고 다음 명령어 두 줄을 차례로 실행합니다. (따옴표 안의 이름과 이메일은 본인의 정보로 변경해 적어야 합니다.)
git config --global user.name "홍길동"
git config --global user.email "gildong@example.com"
알아두면 유용한 팁 — 입력할 이메일 주소는 나중에 가입하게 될 GitHub 계정 이메일과 일치시키는 것이 좋습니다. 그래야 코드를 GitHub에 업로드했을 때, 프로필의 Contribution(초록색 잔디밭)에 내 코딩 흔적이 정상적으로 반영됩니다.
설정이 우리 컴퓨터 환경에 올바르게 저장되었는지 최종 확인하려면 아래 명령어를 타이핑합니다.
git config --list
주르륵 출력되는 목록의 가장 아랫부분에 user.name=홍길동과 user.email=gildong@example.com이 예쁘게 표시된다면, 드디어 첫 코딩 시간 여행을 시작할 모든 로컬 세팅이 완벽히 완결된 것입니다.

정리 — 이제 첫 커밋을 만들 차례
여기까지 왔다면 Git 설치와 초기 설정은 끝났습니다. 처음엔 막막했던 까만 터미널이 조금은 덜 어색해졌을 겁니다.
- 버전 관리는 '최종_진짜최종.docx'와 같은 파일 복사 지옥에서 탈출하기 위해 필수적입니다.
- Git은 분산형 시스템으로서 내 컴퓨터에 이력을 복제해 독립적으로 일하므로, 중앙 서버에만 의존하는 SVN보다 속도가 빠르고 유실 리스크가 낮습니다.
- 설치 후에는 반드시
git config로 사용자 이름과 이메일을 등록해야 정상적인 저장이 가능합니다.
다음 2편에서는 내 프로젝트 폴더에 깃을 초기화하고, 첫 번째 저장점을 만드는 "Commit(커밋) 만들기" 실습을 진행하겠습니다.
참고 자료
'Hello Dev' 카테고리의 다른 글
| 오픈소스와 팀 협업의 꽃 — Fork·Clone과 Pull Request로 첫 기여하기 (0) | 2026.06.23 |
|---|---|
| 평행 우주에서 안전하게 개발하기 — Git 브랜치·병합(merge)과 충돌(conflict) 해결 (0) | 2026.06.22 |
| 실수해도 괜찮아 — Git으로 되돌리기 (restore·amend·reset·revert, 그리고 생명줄 reflog) (0) | 2026.06.22 |
| 내 코드를 클라우드에 백업하기 — GitHub에 처음 git push 하기 (인스타에 사진 올리듯) (0) | 2026.06.22 |
| 내 코드의 첫 저장점 만들기 — git add와 commit, 사진 찍듯 이해하기 (0) | 2026.06.19 |