개발자가 성장하면서 반드시 마주치는 것이 협업과 유지보수입니다. 이때 중요한 것이 바로 버전관리 시스템입니다. 특히 Git은 전 세계 개발자들이 사용하는 가장 보편적인 분산 버전관리 도구입니다.
단순히 코드를 저장하는 것을 넘어서, Git은 개발 히스토리를 기록하고, 실수를 되돌리며, 여러 사람이 동시에 개발하더라도 충돌 없이 관리할 수 있게 해줍니다.
📦 Git의 핵심 개념 한눈에 보기
- Repository (저장소): 프로젝트의 모든 변경 이력을 기록하는 공간
- Commit: 코드의 상태를 저장하는 단위. '스냅샷'이라고 생각하면 쉬움
- Branch: 독립적인 작업 공간. 기능 개발 시 필수
- Merge: 브랜치에서 작업한 내용을 다른 브랜치에 통합하는 과정
- Remote: GitHub와 같은 서버상의 저장소
🛠️ Git 설치와 초기 설정
Git은 공식 홈페이지에서 운영체제에 맞게 설치할 수 있습니다. 설치 후, 아래 명령어로 사용자 정보를 설정합니다.
git config --global user.name "당신의 이름"
git config --global user.email "your@email.com"
이 정보는 커밋할 때 작성자로 기록되므로, 실명과 이메일을 정확히 기입하는 것이 좋습니다.
📁 기본 흐름 이해하기 (로컬 작업)
- 프로젝트 폴더 생성:
mkdir my-project
- Git 초기화:
git init
- 파일 추가:
git add .
또는git add 파일명
- 커밋:
git commit -m "초기 커밋"
위 과정을 반복하면 프로젝트의 모든 변경 사항이 시간 순으로 기록됩니다.
🌿 브랜치로 기능 개발 분리하기
하나의 브랜치(main)에서 계속 작업하면 협업 시 충돌이 발생하기 쉽습니다. 따라서 새로운 기능이나 버그 수정은 별도 브랜치에서 작업하는 것이 좋습니다.
git checkout -b feature/login
위 명령어는 feature/login이라는 브랜치를 생성하고 이동합니다. 작업 완료 후 git merge
로 main 브랜치에 병합하면 됩니다.
🌐 원격 저장소 GitHub 연결하기
협업 또는 백업을 위해 GitHub에 저장소를 만들어 연결할 수 있습니다. 먼저 GitHub에 프로젝트 저장소를 생성한 후, 다음 명령어로 로컬 Git과 연결합니다.
git remote add origin https://github.com/사용자명/저장소명.git
git push -u origin main
이후부터는 git push
, git pull
명령어를 사용하여 서버와 로컬 간 동기화가 가능합니다.
📚 자주 쓰는 Git 명령어 요약
명령어 | 설명 |
---|---|
git status |
작업 디렉토리 상태 확인 |
git log |
커밋 히스토리 확인 |
git diff |
수정된 내용 비교 |
git stash |
작업 중인 변경 사항 임시 저장 |
git clone |
원격 저장소 복제 |
🎯 Git이 개발자 성장에 주는 이점
- 실수 복구 능력 향상 – 이전 커밋으로 되돌리기 가능
- 협업 시 충돌 최소화 – 브랜치 전략을 이용한 효율적인 협업
- 코드 리뷰 기반의 성장 – GitHub에서 피드백 주고받기
- 포트폴리오 구성 – 커밋 히스토리는 나의 성장 기록
📌 마치며: Git은 개발자의 언어다
Git은 단순한 도구가 아니라, 개발자로서의 사고방식과 습관을 형성하는 기초입니다. 지금 당장은 낯설 수 있지만, 꾸준히 사용하다 보면 오히려 Git 없이는 개발이 어려워질 정도로 익숙해질 것입니다.
오늘부터 Git을 일상적으로 사용하며, 성장하는 개발자의 길을 한 걸음씩 밟아보세요.