데이터 분석, 개발, 협업을 하다 보면 꼭 만나게 되는 도구가 있습니다. 바로 Git과 GitHub입니다.
오늘은 Git과 GitHub의 차이부터 실습에 필요한 기본 명령어, 그리고 협업의 흐름까지 스터디한 내용을 정리해보겠습니다
1. Git과 GitHub, 뭐가 다른가요?
- Git: 분산 버전 관리 시스템입니다. 파일의 변경 이력을 로컬 컴퓨터에 저장하고, 이전 버전으로 돌아가거나 변경 내용을 추적할 수 있게 해줍니다.
- GitHub: Git 저장소를 웹에서 호스팅하고, 여러 사람이 협업할 수 있도록 도와주는 플랫폼입니다.
요약: Git은 "버전 관리 도구", GitHub는 "Git을 올려두고 협업하는 공간"
2. 왜 Git을 써야 할까? (버전 관리의 필요성)
- 코드를 수정하다가 예전 버전으로 돌아가고 싶을 때
- 여러 명이 동시에 프로젝트를 작업할 때 충돌을 방지하고 싶을 때
- 파일 이름에 _최종_final_최종2_진짜최종 같은 혼란을 줄이고 싶을 때
Git은 이런 문제를 깔끔하게 해결해줍니다.
3. Git 설치 및 환경 설정 (간단 정리)
Git 설치
- https://git-scm.com 에서 OS에 맞게 다운로드
초기 설정 (설치 후 단 한 번만)
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
4. Git의 기본 흐름과 주요 명령어
1) Git 저장소 초기화
git init
2) 변경 사항 스테이징 (준비 단계)
git add 파일명 # 또는 git add . (전체 추가)
3) 커밋 (스냅샷 찍기)
git commit -m "커밋 메시지"
4) 원격 저장소 연결 & 업로드
git remote add origin 원격주소
git push -u origin main
5) 기존 저장소 클론 (복사해오기)
git clone 원격주소
6) 원격 저장소 변경 사항 가져오기
git pull
💡 tip: git status 와 git log로 항상 상태를 확인하자!
5. GitHub을 활용한 협업 흐름
1) 브랜치 (branch)
- 새로운 기능이나 실험을 메인 코드에 영향 없이 시도할 수 있게 해줍니다.
git branch 브랜치명
git checkout 브랜치명
2) 포크(fork) & Pull Request(PR)
- 오픈소스에 기여하거나, 직접 접근 권한이 없는 저장소에 변경 사항을 제안할 때 사용합니다.
- GitHub에서 저장소를 fork → 수정 → PR(Pull Request) 보내는 흐름으로 진행됩니다.
3) 협업 흐름 예시
1. 저장소 클론
2. 새로운 브랜치 생성
3. 코드 수정 및 커밋
4. GitHub에 푸시
5. Pull Request 생성
6. 코드 리뷰 & 머지
6. 정리: Git & GitHub 처음 쓸 때 이것만 기억하세요
- Git은 내 컴퓨터에서 버전 관리, GitHub는 온라인 저장소 & 협업 공간
- add → commit → push가 기본 흐름
- 항상 status로 확인하고, 실수해도 되돌릴 수 있음!