GitHub 계정 생성·프로필 설정, 원격 저장소(Remote Repository) 개념, HTTPS vs SSH 차이와 SSH 키 생성·등록, 기존 로컬 저장소를 GitHub에 처음 연결하는 방법까지 협업의 출발점을 완전히 설정합니다.
🎯 학습 목표
이 강을 마치면 다음을 할 수 있습니다.
- GitHub 계정을 만들고 프로필을 기본 설정할 수 있습니다.
- 원격 저장소(Remote Repository)가 무엇인지, 로컬 저장소와 어떤 관계인지 설명할 수 있습니다.
- HTTPS와 SSH 방식의 차이를 이해하고 SSH 키를 생성·등록할 수 있습니다.
- 기존 로컬 저장소를 GitHub에 처음 연결(
git remote add)할 수 있습니다.
🐙 GitHub란 무엇인가
이 섹션에서는 GitHub가 단순한 코드 저장소를 넘어 어떤 플랫폼인지 살펴보겠습니다.
GitHub는 Git 저장소를 온라인(클라우드)에서 호스팅하는 플랫폼입니다. Microsoft가 운영하며, 2024년 기준 전 세계 1억 명 이상의 개발자가 사용하는 세계 최대의 소프트웨어 개발 협업 플랫폼입니다.
GitHub가 단순히 "Git 저장소 보관소"가 아닌 이유는 다음과 같습니다.
- 협업 도구: Pull Request, 코드 리뷰, 이슈 추적, 프로젝트 관리 기능 내장
- CI/CD 플랫폼: GitHub Actions로 테스트·빌드·배포 자동화
- 개발자 포트폴리오: 공개 저장소가 곧 이력서. 잔디(contribution graph)로 꾸준한 활동 증명
- 오픈소스 생태계: React, Vue, Python, Linux 등 전 세계 오픈소스 프로젝트의 대부분이 GitHub에 있음
- GitHub Copilot: AI 코드 자동완성 도구 (유료)
유사 플랫폼으로 GitLab, Bitbucket도 있지만, 취업 시장과 오픈소스 생태계에서 GitHub가 사실상 표준입니다.
🔗 원격 저장소(Remote Repository) 개념
이 섹션에서는 로컬 저장소와 원격 저장소의 관계, 그리고 두 저장소가 어떻게 동기화되는지 살펴보겠습니다.
지금까지 우리가 사용한 Git 저장소는 로컬 저장소(Local Repository)입니다. 내 컴퓨터 하드디스크에만 있어서 나만 접근할 수 있고, 컴퓨터가 망가지면 사라집니다.
원격 저장소(Remote Repository)는 인터넷 서버(GitHub)에 있는 저장소입니다. 다음과 같은 역할을 합니다.
- 백업: 로컬이 망가져도 GitHub에 있으면 안전
- 협업: 팀원 모두가 같은 원격 저장소를 공유
- 배포: Vercel, Netlify, Heroku 등이 GitHub 저장소에서 자동 배포
# 연결된 원격 저장소 확인
git remote -v
# origin https://github.com/username/my-project.git (fetch)
# origin https://github.com/username/my-project.git (push)
#
# "origin"은 기본 원격 저장소의 이름 (관례적 이름, 변경 가능)
🔐 HTTPS vs SSH — 연결 방식 선택
이 섹션에서는 GitHub에 접속하는 두 가지 방식의 차이와 각 방식을 선택하는 기준을 살펴보겠습니다.
GitHub 저장소와 로컬을 연결할 때 두 가지 프로토콜 중 하나를 선택합니다.
| 방식 | 주소 형태 | 인증 | 추천 상황 |
|---|---|---|---|
| HTTPS | https://github.com/user/repo.git |
GitHub 아이디 + Personal Access Token (PAT) | 빠른 시작, 조직 보안 정책 |
| SSH | git@github.com:user/repo.git |
SSH 키 쌍 (공개키/개인키) | 개인 개발 환경, 비밀번호 없이 사용 |
SSH 방식이 더 편리한 이유는 한 번 설정하면 push·pull마다 비밀번호를 입력하지 않아도 되기 때문입니다. SSH 키 생성과 등록 방법입니다.
# 1. SSH 키 생성 (이미 있으면 건너뜀)
ssh-keygen -t ed25519 -C "your_email@example.com"
# Enter file in which to save the key: 그냥 Enter (기본 위치 사용)
# Enter passphrase: 키 암호 (선택사항, 보안 강화)
# 2. 생성된 공개키 확인
cat ~/.ssh/id_ed25519.pub
# ssh-ed25519 AAAAC3Nza... your_email@example.com
# 이 내용 전체를 복사
# 3. SSH 에이전트에 키 등록 (매번 입력 없이 자동 사용)
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
# 4. GitHub에 공개키 등록
# GitHub.com → Settings → SSH and GPG keys → New SSH key
# 복사한 공개키 내용 붙여넣기
# 5. 연결 테스트
ssh -T git@github.com
# Hi username! You've successfully authenticated... (성공)
🚀 GitHub 저장소 생성 및 로컬 연결
이 섹션에서는 GitHub에서 새 저장소를 만들고 기존 로컬 저장소와 연결하는 방법을 살펴보겠습니다.
방법 A — GitHub에서 먼저 만들고 클론: 새 프로젝트를 시작할 때 추천합니다.
# GitHub 웹에서 새 저장소 생성 후:
# 1. 원하는 폴더에 저장소 복제
git clone git@github.com:username/my-project.git
# 2. 자동으로 원격 저장소가 'origin'으로 연결됨
cd my-project
git remote -v
방법 B — 기존 로컬 저장소를 GitHub에 올리기: 이미 작업 중인 프로젝트를 올릴 때 사용합니다.
# 1. GitHub 웹에서 비어있는 새 저장소 생성
# (README, .gitignore 초기화 체크 해제 — 로컬에 이미 있으므로)
# 2. 로컬 저장소에 원격 저장소 주소 등록
git remote add origin git@github.com:username/my-project.git
# 3. 현재 브랜치 이름 확인 (main 또는 master)
git branch
# 4. 처음 push (브랜치를 원격에 만들고 추적 관계 설정)
git push -u origin main
# -u (--set-upstream): 이후부터 git push만 입력해도 origin main으로 자동 push
# 이후부터는 간단하게
git push
git pull
처음 git push가 성공하면 GitHub 페이지를 새로고침했을 때 파일들이 올라간 것을 확인할 수 있습니다.
🔧 원격 저장소 관리 명령어
이 섹션에서는 원격 저장소 설정을 변경하거나 여러 원격을 관리하는 명령어를 살펴보겠습니다.
# 현재 연결된 원격 저장소 확인
git remote -v
# 원격 저장소 주소 변경 (예: HTTPS → SSH로 전환)
git remote set-url origin git@github.com:username/my-project.git
# 원격 저장소 이름 변경
git remote rename origin upstream
# 원격 저장소 연결 제거
git remote remove origin
# 원격 저장소 추가 (여러 원격 관리 — fork한 프로젝트에서 활용)
git remote add upstream git@github.com:original-author/project.git
git remote -v
# origin git@github.com:my-username/project.git (내 fork)
# upstream git@github.com:original-author/project.git (원본)
📝 핵심 요약
10강에서 배운 내용을 정리해 보겠습니다.
# 원격 저장소 연결
git remote add origin 주소 # 원격 저장소 등록
git remote -v # 등록된 원격 저장소 확인
git push -u origin main # 최초 push (추적 관계 설정 포함)
git push # 이후 push
# SSH 키 생성 요약
ssh-keygen -t ed25519 -C "이메일" # 키 생성
cat ~/.ssh/id_ed25519.pub # 공개키 출력 (GitHub에 등록)
ssh -T git@github.com # 연결 테스트
| 구분 | 로컬 저장소 | 원격 저장소(GitHub) |
|---|---|---|
| 위치 | 내 컴퓨터 | 인터넷 서버 |
| 접근 | 나만 | 권한 있는 모든 사람 |
| 동기화 | push로 올림 | pull/clone으로 받음 |
다음 강인 11강 — push와 pull에서는 로컬과 원격 저장소를 실제로 동기화하는 git push와 git pull의 모든 것을 배웁니다. 팀원이 올린 변경 사항을 내려받고, 내 작업을 공유하는 협업의 핵심 사이클을 완성합니다!
관련 주제
- GitHub 계정 생성
- 원격 저장소
- HTTPS vs SSH
- SSH 키 생성
- git remote add
- 개발·프로그래밍
- 개발·프로그래밍 강의
- 깃허브 사용법 18강 — Git & GitHub 협업
- 무료강의
- 무료 온라인 강의
- NUGUNA
- 누구나
📚 시리즈 전체 공유
깃허브 사용법 18강 — Git & GitHub 협업
이 강의가 속한 시리즈는 총 12강, 모두 무료입니다. 처음부터 배우려는 동료에게 시리즈 전체를 알려 주세요.
댓글
불러오는 중...
