클론(Clone): 저장소 받아 오기
이 글의 목차
소요: 15분 · 버전: v0.1 (2026-10-01) · 11장
| 이 장의 질문 | GitHub에 있는 저장소를 내 PC로 어떻게 받아 오는가 |
|---|---|
| 다루는 것 | 클론(Clone)의 뜻, 주소로 저장소 받기, 다른 PC에서 이어서 작업하기, 받은 저장소를 목록에서 빼기 |
| 다루지 않는 것 | 남의 저장소를 내 계정으로 복사해 고치기(fork), 초대받은 팀 저장소의 권한(각 팀 규칙) |
| 이 장을 마치면 | GitHub의 저장소 주소만 있으면 내 PC로 받아 올 수 있고, 다른 PC에서도 같은 저장소로 이어서 작업할 수 있습니다 |
1. 클론은 저장소를 처음 통째로 받는 것입니다
지금까지는 내 PC에서 저장소를 만들어 GitHub에 올렸습니다(5장의 게시). 반대로 GitHub에 이미 있는 저장소를 내 PC로 처음 받아 오는 것을 클론(Clone) 이라고 합니다. 팀 저장소에 초대받았을 때, 다른 PC에서 작업을 이어갈 때 씁니다.
| 동작 | 방향 | 언제 |
|---|---|---|
| 게시(Publish) | 내 PC → GitHub, 처음 한 번 | 내 PC에서 만든 저장소를 처음 올릴 때 (5장) |
| 클론(Clone) | GitHub → 내 PC, 처음 한 번 | GitHub에 있는 저장소를 처음 받을 때 |
| 풀(Pull) | GitHub → 내 PC, 그다음부터 | 이미 받은 저장소에 새 기록만 받을 때 (6장) |
클론하면 파일만 오는 것이 아니라 지금까지의 기록(History) 전체가 함께 옵니다. 그래서 받은 뒤 바로 History를 보고, 커밋하고, 푸시할 수 있습니다. 푸시는 그 저장소에 쓰기 권한이 있을 때만 됩니다.
2. 실습 1: 공개 저장소 받아 보기
GitHub가 연습용으로 공개해 둔 저장소 octocat/Spoon-Knife 를 받아 봅니다. 누구나 받을 수 있는 공개 저장소입니다.
2-1. 주소 확인하기
- 브라우저에서 https://github.com/octocat/Spoon-Knife 를 엽니다.
- 저장소 주소는 브라우저 주소창의 주소와 같습니다. 초록색 Code 버튼을 누르면 나오는 HTTPS 주소(
…Spoon-Knife.git)를 복사해도 됩니다.
2-2. GitHub Desktop에서 받기
- 메뉴 File → Clone repository… 를 누릅니다. 두 운영체제가 같습니다(Mac은 화면 맨 위 메뉴 막대).
- 창 위쪽의 URL 탭을 누릅니다.
- 첫 칸에 주소를 붙여 넣습니다.
octocat/Spoon-Knife처럼 "계정/저장소" 형태로 써도 됩니다. - Local path 가 5장에서 만든 작업 폴더 아래의
Spoon-Knife인지 확인합니다.
Windows
C:\GitHub\Spoon-Knife
Mac
/Users/내이름/GitHub/Spoon-Knife
- Clone 을 누릅니다.
2-3. 받은 것 확인하기
- 위쪽 왼쪽 Current Repository 가
Spoon-Knife로 바뀌었습니다. - History 탭에 내가 만들지 않은 커밋들이 보입니다. 기록 전체가 함께 왔기 때문입니다.
- Repository → Show in Explorer(Mac은 Show in Finder)로 폴더를 열면
index.html,README.md,styles.css가 있습니다.
이 저장소는 내 것이 아니라서 푸시할 수 없습니다. 파일을 고쳐 보는 것은 괜찮지만 커밋하지는 않습니다. 고쳤다면 7장의 Discard Changes로 버립니다.
3. 저장소 사이를 오가기
GitHub Desktop은 받은 저장소를 모두 기억합니다. 위쪽 왼쪽 Current Repository 를 누르면 my-first-repo 와 Spoon-Knife 가 목록에 함께 보입니다. 하나를 누르면 그 저장소로 바뀝니다.
저장소가 여러 개가 되면 엉뚱한 저장소에 커밋하는 실수가 생깁니다. 6장의 시작 습관대로, 작업하기 전에 Current Repository 부터 확인합니다.
지금 Current Repository → my-first-repo 로 돌아옵니다.
4. 다른 PC에서 이어서 작업하기
집과 사무실, 노트북과 데스크톱처럼 PC를 바꿔 가며 작업할 때도 클론을 씁니다.
| 순서 | 어디서 | 할 일 |
|---|---|---|
| ① | 원래 PC | 하던 작업을 커밋하고 푸시합니다. Changes가 비어 있어야 합니다 |
| ② | 다른 PC | GitHub Desktop을 설치하고 같은 계정으로 로그인합니다(4장) |
| ③ | 다른 PC | File → Clone repository… → GitHub.com 탭 → 목록에서 my-first-repo 를 고르고 Clone 합니다. 내 저장소는 주소를 입력하지 않아도 목록에 나옵니다 |
| ④ | 다른 PC | Current Branch 를 작업하던 브랜치(work)로 바꾸고 작업 → 커밋 → 푸시합니다 |
| ⑤ | 원래 PC로 돌아와서 | 작업 전에 Fetch origin → Pull origin 으로 다른 PC에서 한 작업을 받습니다 |
두 PC 모두 "시작할 때 받고, 끝날 때 올린다" 를 지키면 기록이 어긋나지 않습니다. 한쪽에서 푸시하지 않은 채 다른 쪽에서 같은 파일을 고치면, 나중에 받을 때 충돌(10장)이 날 수 있습니다.
같은 PC의 같은 폴더에는 같은 저장소를 두 번 클론할 수 없습니다. 이 절은 다른 PC가 있을 때 해 봅니다.
5. 실습 2: 받은 저장소를 목록에서 빼기
연습으로 받은 Spoon-Knife 는 이제 필요 없습니다.
- Current Repository 에서
Spoon-Knife를 고릅니다. - 메뉴 Repository → Remove… 를 누릅니다.
- 확인 창에서 내 PC의 폴더까지 지울지 고릅니다.
Windows
Also move this repository to the Recycle Bin 을 체크하면 폴더가 휴지통으로 갑니다.
Mac
Also move this repository to Trash 를 체크하면 폴더가 휴지통으로 갑니다.
- Remove 를 누릅니다.
Remove는 내 PC의 사본만 정리합니다. GitHub에 있는 저장소에는 아무 영향이 없습니다. 필요하면 언제든 다시 클론할 수 있습니다.
참고: 연습 저장소를 GitHub에서도 지우려면
튜토리얼을 모두 마친 뒤my-first-repo를 GitHub에서도 지우고 싶다면, 브라우저의 저장소 화면 → Settings → 맨 아래 Delete this repository 를 누릅니다. 이것은 되돌릴 수 없고 기록까지 모두 사라집니다. 지우지 않고 그대로 두어도 비공개라 다른 사람에게 보이지 않습니다.
확인
확인 문제
① 클론과 풀은 어떻게 다른가요?
클론은 GitHub의 저장소를 내 PC에 처음 통째로 받는 것이고, 풀은 이미 받은 저장소에 새로 생긴 기록만 받는 것입니다.② 회사 PC에서 작업하다 집 PC로 옮기려고 합니다. 회사 PC에서 마지막으로 할 일은 무엇인가요?
커밋하고 푸시하는 것입니다. 푸시하지 않은 작업은 GitHub에 없으므로 다른 PC에서 받을 수 없습니다.③ GitHub Desktop에서 Remove를 하면 GitHub의 저장소도 지워지나요?
지워지지 않습니다. 내 PC의 사본만 목록에서 빠집니다(선택하면 폴더도 휴지통으로).자주 발생하는 문제
| 증상 | 확인할 것 |
|---|---|
| 주소를 넣었는데 저장소를 찾을 수 없다고 나옵니다 | 주소에 오타가 없는지 봅니다. 비공개 저장소라면 내 계정에 권한이 있어야 보입니다. 로그인한 계정을 확인합니다 |
| Local path에 이미 폴더가 있다고 나옵니다 | 같은 이름의 폴더가 있습니다. 이미 클론한 적이 있는지 Current Repository 목록을 확인하거나, Local path의 폴더 이름을 바꿉니다 |
| GitHub.com 탭 목록에 내 저장소가 없습니다 | 다른 계정으로 로그인했을 수 있습니다. 4장 "안내를 놓쳤을 때"의 메뉴에서 계정을 확인합니다 |
| 받은 저장소에서 푸시가 거절됩니다 | 쓰기 권한이 없는 저장소입니다. 내 저장소가 아니면 정상입니다 |