(GitHub Docs)


0. 전체 핵심

Git은 코드의 변경 이력을 기록하고 관리하는 버전 관리 도구

GitHub는 Git으로 관리되는 프로젝트를 온라인에 올리고, 팀원들과 함께 협업할 수 있게 해주는 원격 저장소 플랫폼

둘의 관계는 다음과 같음

Git
→ 내 컴퓨터에서 코드 변경 이력을 기록하는 도구

GitHub
→ Git 저장소를 온라인에 올려 공유하고 협업하는 플랫폼

즉, Git은 도구이고 GitHub는 그 도구를 기반으로 협업할 수 있게 해주는 서비스


1. Git을 쓰는 이유

1.1 변경 이력 관리

코드를 수정할 때마다 특정 시점의 상태를 저장할 수 있음

각 저장 지점을 commit이라고 부름

commit 1: 프로젝트 시작
commit 2: 데이터 전처리 코드 추가
commit 3: ESM embedding 추출 코드 추가
commit 4: RAD51C scoring 코드 수정

이렇게 쌓이면 나중에 언제 어떤 변경이 있었는지 추적 가능


1.2 이전 상태로 돌아가기

코드를 고치다가 문제가 생겼을 때, 이전 commit으로 되돌아갈 수 있음

문제 상황:
수정하다가 코드가 망가짐

Git 사용 시:
이전 정상 commit으로 돌아갈 수 있음

즉, Git은 코드 작업의 세이브 포인트를 만들어주는 역할