New

Git and GitHub

lshjju 2026. 2. 19. 17:56

개발이라는 여정에서 가장 두려운 순간 중 하나는 정성껏 작성한 코드가 사라지거나, 어제로 되돌리고 싶은데 방법을 모를 때입니다.

이런 문제를 완벽하게 해결해 주는 마법 같은 도구인 GitGitHub에 대해 설명해 드릴게요.

이 둘의 관계는 흔히 '게임의 저장 파일'과 '클라우드 저장소'에 비유하곤 합니다.


Git: 코드의 시간을 기록하는 기록 장치

Git은 '버전 관리 시스템(Version Control System)'입니다.

우리가 문서를 작성하다가 최종.doc, 진짜최종.doc, 진짜마지막최종.doc처럼 이름을 바꿔 저장해 본 경험이 있을 거예요.

Git은 이런 번거로움 없이 코드의 변경 사항을 차곡차곡 기록해 줍니다.

  • 버전 관리: 코드의 변경 이력을 스냅샷처럼 저장하여, 언제든 과거의 특정 시점으로 되돌릴 수 있습니다.
  • 협업의 기반: 여러 사람이 동시에 같은 파일을 수정하더라도 내용이 섞이지 않게 도와주는 '브랜치(Branch)' 기능을 제공합니다.
  • 로컬 작업: 기본적으로 내 컴퓨터(로컬 환경) 안에서 동작하며 코드의 변화를 추적합니다.

GitHub: 코드의 고향이자 소셜 네트워크

GitHub은 Git으로 관리하는 프로젝트들을 온라인상에 올릴 수 있는 '원격 저장소 서비스'입니다.

Git이 내 컴퓨터 안의 기록 장치라면, GitHub은 그 기록들을 전 세계 사람들과 공유하고 백업할 수 있는 커다란 금고와 같습니다.

  • 백업 및 공유: 내 컴퓨터가 고장 나도 GitHub에 올려둔 코드는 안전하게 보관됩니다.
  • 협업의 장: 오픈 소스 프로젝트처럼 전 세계 개발자들이 모여 서로의 코드를 리뷰하고 개선 사항을 제안(Pull Request)할 수 있습니다.
  • 포트폴리오: 개발자가 어떤 코드를 짰는지, 얼마나 꾸준히 공부했는지(잔디 심기)를 보여주는 이력서 역할도 합니다.

Git과 GitHub의 핵심 개념 리스트

이 두 도구를 사용할 때 가장 자주 마주치는 핵심 용어들을 정리했습니다.

  • Repository (레포지토리): 프로젝트가 저장되는 '저장소'입니다.
  • Commit (커밋): 변경된 내용을 기록하는 '저장' 버튼과 같습니다. 의미 있는 변화마다 설명을 남깁니다.
  • Push (푸시): 내 컴퓨터(Git)에서 작업한 내용을 온라인(GitHub)으로 밀어 올리는 작업입니다.
  • Pull (풀): 온라인(GitHub)에 있는 최신 코드를 내 컴퓨터로 당겨오는 작업입니다.
  • Clone (클론): 온라인에 있는 저장소 전체를 내 컴퓨터로 복제해 오는 것입니다.

실무자의 시선

실무에서 Git은 선택이 아닌 생존 도구입니다.

  • 실수로부터의 자유: 코드를 잘못 건드려 서비스가 멈추더라도, Git이 있다면 1분 안에 문제가 없던 상태로 되돌릴 수 있습니다.
  • 코드 리뷰 문화: GitHub의 Pull Request 기능을 통해 동료의 코드를 읽고 의견을 나누며 코드의 품질을 높입니다.
  • 협업의 필수 매너: 나 혼자만 이해하는 코드가 아니라, Git 커밋 메시지 하나에도 "왜 이 코드를 수정했는지" 동료를 위해 친절하게 남기는 습관이 중요합니다.

코딩 실력만큼이나 Git을 능숙하게 다루는 능력은 '함께 일하고 싶은 개발자'가 되는 지름길입니다.

 


'New' 카테고리의 다른 글

Backend development tech  (0) 2026.02.19
Frontend development tech  (0) 2026.02.19
HTML CSS JavaScript role  (0) 2026.02.19
Chrome Developer Tools  (0) 2026.02.19
Types of multimedia file  (0) 2026.02.18