[Git] 버전관리, Git은 왜 쓰는걸까?

Park KyuChan·2025년 9월 28일

Git

목록 보기
1/2

코딩 공부를 시작하고 이것저것 만들다 보니, 문득 이런 생각이 들었습니다.

"어? 어제까지 잘 되던 코드가 왜 갑자기 안 되지? 뭘 바꿨더라..."

"팀 프로젝트를 해야 하는데, 내가 수정한 파일이랑 친구가 수정한 파일을 어떻게 합치지?"

혹시 이런 경험 없으신가요?

저는 과제 할 때마다 파일명을 과제.hwp, 과제최종.hwp, 과제진짜최종.hwp,

과제교수님께보낼파일_진짜진짜최종.hwp... 이렇게 저장하곤 했습니다. 🤯

개발 세계에서는 이런 식의 주먹구구식 파일 관리가 큰 재앙을 불러올 수 있다고 합니다.

그래서 오늘은 이 모든 문제를 해결해 줄 마법 같은 도구, Git에 대해 이야기해보려고 합니다.


버전 관리(Version Control)가 뭔가요?

가장 먼저, '버전 관리'라는 말부터가 좀 어렵게 들리죠? 아주 쉽게 비유해 볼게요.

우리가 게임을 할 때 중요한 순간마다 '세이브 포인트'에 저장을 하잖아요?

버전 관리는 딱 그거라고 생각하시면 됩니다. 코드의 특정 상태를 스냅샷처럼 찍어서 '버전'으로 저장해두는 거죠.

버전 관리를 하면 뭐가 좋을까요?

● 시간 여행 가능 : 코드를 잘못 건드려서 프로그램이 망가져도 괜찮아요.

가장 최근에 잘 작동했던 '세이브 포인트(버전)'로 순식간에 되돌아갈 수 있습니다.

● 변경 이력 추적 : 누가, 언제, 어떤 코드를, 왜 바꿨는지 모든 기록이 남습니다.

더 이상 "이거 누가 건드렸어!" 하고 싸울 필요가 없죠.

● 평화로운 협업 : 여러 명이 하나의 프로젝트를 동시에 작업할 수 있습니다.

각자 자기 파트를 작업한 뒤, 나중에 코드를 깔끔하게 합칠 수 있게 도와줍니다.

바로 이런 파일 관리의 어려움을 해결해 주는 시스템을

버전 관리 시스템(Version Control System, VCS) 이라고 부릅니다.


Git, 그리고 GitHub

● Git이란? 세상에서 가장 인기 있는 버전 관리 시스템(VCS)입니다. 바로 위에서 설명한 버전 관리의 모든 기능을 제공하는 '내 컴퓨터에 설치하는 프로그램'이죠. 리눅스를 만드신 리누스 토르발스가 개발했다고 하니, 성능은 말 다 했죠?

● 그럼 GitHub는 뭔가요? 초보자들이 가장 헷갈려 하는 부분입니다. 저도 그랬고요!

● Git: 내 컴퓨터에서 코드 버전을 기록하고 관리하는 '도구' (소프트웨어)

● GitHub: Git으로 관리하는 내 프로젝트를 올려두는 '웹사이트' (서비스)

Git으로 내 컴퓨터(로컬 저장소)에서 열심히 버전을 만들고,

그 결과물을 GitHub(원격 저장소)에 올려서 백업도 하고, 다른 사람들과 공유도 하는 거죠!

오늘은 Git, Github에 관해 알아보았는데요.

다음엔 Git설치와 Github 회원가입을 해보겠습니다!!

profile
Fullstack developer

0개의 댓글