한줄 요약:
프로젝트의 모든 변경 사항을 안전하게 기록하고, 팀과 협업할 수 있는 Git과 GitHub 사용법!
👉 Git으로 버전 관리, GitHub으로 협업 완벽하게 시작하기!
1. 목표
- Git을 사용하여 프로젝트의 버전 관리 시작
- GitHub을 이용해 원격 저장소에 코드 푸시/풀하기
- 팀원들과 협업할 수 있도록 GitHub에서 브랜치와 PR(Pull Request) 관리하기
2. Git 설치 및 기본 설정
1️⃣ Git 설치
- Windows
- Git 공식 웹사이트에서 Windows용 Git 다운로드
- 설치 중에
Git Bash선택하여 설치 후 실행
- macOS / Linux
- macOS: 터미널에서
brew install git - Linux:
sudo apt install git(Ubuntu 기준)
- macOS: 터미널에서
설치가 끝났다면 터미널에서 git --version을 입력하여 설치 확인!
2️⃣ Git 초기 설정
- 사용자 정보 설정 (이메일, 사용자 이름)
git config --global user.name "Your Name" git config --global user.email "your_email@example.com" - 설정 확인
git config --list
3. Git 기본 명령어
1️⃣ 프로젝트 초기화
git init
현재 폴더를 Git 프로젝트로 만들고, .git 폴더가 생성됩니다.
2️⃣ 파일 상태 확인
git status
수정된 파일, 추적되지 않은 파일 등을 확인할 수 있습니다.
3️⃣ 파일 추가 및 커밋
git add .
git commit -m "커밋 메시지"
git add .는 모든 파일을 스테이징하는 명령입니다. 그 후 git commit으로 커밋 메시지와 함께 파일을 저장합니다.
4️⃣ Git 히스토리 확인
git log
커밋 로그를 확인할 수 있습니다. q를 눌러 로그 종료.
5️⃣ Git 변경사항 되돌리기
git checkout -- 파일명
수정한 파일을 되돌릴 수 있습니다.
4. GitHub 연동
1️⃣ GitHub 계정 만들기
- GitHub에 방문하여 무료 계정을 만듭니다.
- SSH 키 생성 및 등록 (기본 인증 방법 대신 더 안전하게 인증)
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
생성된 SSH 키를 GitHub에 추가합니다.
GitHub → Settings > SSH and GPG keys → New SSH Key에 추가.
2️⃣ GitHub 저장소 만들기
- GitHub에서 새로운 repository 생성 (
New repository클릭) Initialize this repository with a README옵션을 선택할 수도 있지만, 로컬에서 프로젝트를 시작하려면 선택하지 않고 빈 repository를 만듭니다.
3️⃣ 로컬 Git 저장소와 GitHub 연결
GitHub에서 새로 만든 저장소의 URL을 복사한 후, 로컬 프로젝트와 연결합니다.
git remote add origin git@github.com:your_username/your_repository.git
4️⃣ GitHub에 코드 푸시하기
git push -u origin master
이 명령어는 **현재 브랜치(master)**를 GitHub 원격 저장소로 푸시합니다.
5. 브랜치 관리 및 협업
1️⃣ 브랜치 생성 및 전환
git branch new-branch-name
git checkout new-branch-name
새로운 브랜치를 만들고, 해당 브랜치로 전환합니다.git checkout -b new-branch-name으로 한 번에 브랜치를 만들고 전환할 수도 있습니다.
2️⃣ 브랜치 병합(Merge)
git checkout master
git merge new-branch-name
master 브랜치로 돌아가서 new-branch-name을 병합합니다.
3️⃣ 충돌 해결
- 충돌이 발생하면 Git은 해당 파일을 수정하라고 알려줍니다.
- 충돌이 해결되면
git add <파일명>으로 다시 스테이징하고,git commit으로 해결된 내용을 커밋합니다.
4️⃣ Pull Request (PR)
협업할 때는 GitHub에서 **Pull Request (PR)**을 사용하여 코드 리뷰와 병합을 합니다.
git push origin new-branch-name으로 브랜치를 원격 GitHub 저장소에 푸시합니다.- GitHub에서 해당 브랜치에 대해 Pull Request를 생성하고, 팀원들이 리뷰한 후 병합합니다.
6. 자주 묻는 질문(FAQ)
Q. Git과 GitHub의 차이는 무엇인가요?
A. Git은 로컬에서 프로젝트 버전 관리를 하는 툴입니다.
GitHub은 원격에서 Git을 사용하여 프로젝트를 저장하고 팀원들과 협업하는 플랫폼입니다.
Q. GitHub에서 패스워드 없이 SSH로 푸시하는 방법은?
A. SSH 키를 사용하여 인증을 설정하면 패스워드 없이 GitHub에 푸시할 수 있습니다.ssh-keygen 명령어로 SSH 키를 생성한 후, GitHub에 등록하면 됩니다.
Q. 여러 명이 협업할 때 브랜치는 어떻게 나누나요?
A. 각 기능(기능 개발, 버그 수정 등)마다 별도의 브랜치를 생성합니다. 예를 들어, feature/login, bugfix/fix-typo 등. 병합 전 PR을 통해 코드 리뷰를 진행합니다.
7. 최종 점검 체크리스트
- Git을 통해 버전 관리 시스템을 설정했다.
- GitHub에서 원격 저장소를 만들고 연결했다.
- 브랜치를 생성하고 기능별 작업을 진행한다.
- **Pull Request(PR)**을 사용하여 협업할 수 있다.
- 커밋 메시지를 작성할 때 의미 있는 메시지를 썼다.
8. 요약 한 줄
Git은 로컬에서 버전 관리, GitHub은 협업을 위한 원격 저장소!
버전 관리의 기초부터 고급까지, 브랜치와 PR을 활용한 협업까지 마스터하자 ✅
이전 강좌 👈 [도구/환경#2] 가상환경 & 패키지 관리 (venv, conda, pip)
다음 강좌 👉 [도구/환경#4] Docker로 파이썬 개발 환경 컨테이너화