오늘 방문 /누적 방문 /완성한 레슨 소개 ↗
SECONDTEAM
Git·GitHub
🔀 레슨

GitHub란 — 코드의 클라우드

Git이 내 일기장이면 GitHub는 공유 서재. 백업·공개·협업이 한 번에.

① 오늘의 미션
"노트북이 깨지면 우리 가게는?"
지난 레슨까지 우리는 레시피 장부(git)로 가게의 변화를 한 장씩 사진 찍어 왔어요. 되돌리기도 배웠죠. 그런데 이 장부는 전부 내 노트북 안에만 있어요. 노트북이 고장 나거나 잃어버리면 — 가게 기록도 함께 사라집니다.

그래서 오늘은 장부를 클라우드 금고(GitHub)에도 한 부 보관합니다. 백업이자, 남에게 보여주는 진열장이에요.

설명을 따라 진행하면, 여기서 직접 쳐보게 돼요 👇
~/my-shop
$ _
📚 「GitHub란 — 코드의 클라우드」 레슨 내용 전체 텍스트로 훑어보기
"노트북이 깨지면 우리 가게는?"
지난 레슨까지 우리는 레시피 장부(git)로 가게의 변화를 한 장씩 사진 찍어 왔어요. 되돌리기도 배웠죠. 그런데 이 장부는 전부 내 노트북 안에만 있어요. 노트북이 고장 나거나 잃어버리면 — 가게 기록도 함께 사라집니다.

그래서 오늘은 장부를 클라우드 금고(GitHub)에도 한 부 보관합니다. 백업이자, 남에게 보여주는 진열장이에요.

이름이 거의 똑같아서 제일 헷갈리는 지점이에요. Git과 GitHub는 같은 것일까요?
맞아요. Git은 내 노트북에서 변화를 기록하는 도구(장부), GitHub는 그 장부를 온라인에 보관·공유하는 클라우드 서재예요. Git은 GitHub 없이도 돌아가지만, GitHub는 Git이 있어야 의미가 있어요.
둘의 역할을 가게 비유로 나란히 놓고 봐요.
📓 Git — 내 노트북의 장부: 반찬가게의 모든 변화를 내 책상 위 장부에 사진 찍어 기록해요.
빠르고 내 손 안에 있지만, 책상(노트북)이 사라지면 장부도 사라져요.
🏦 GitHub — 클라우드 금고·진열장: 그 장부를 온라인 금고에 한 부 더 올려둬요.
· 백업 — 노트북이 깨져도 안전
· 공개 — 남에게 가게 코드를 보여줄 수 있음
· 협업 — 동료와 같은 장부를 함께 고침

지금 우리 가게 폴더의 장부는 로컬(내 노트북)에만 있어요. 연결된 클라우드 금고가 있는지 확인해봐요. 셸 명령 git remote -v는 "이 장부가 어떤 원격 금고와 연결됐나"를 보여줘요.

git remote -v — 연결된 원격 금고가 있는지 확인해요 (아직 없을 거예요)
비어 있죠? 아직 내 노트북에만 장부가 있다는 뜻이에요. 이제 클라우드 금고에 연결해서 올려봅시다.

내 장부를 클라우드 금고로 보내는 동작이 push(푸시)예요. "내 노트북의 커밋들을 GitHub로 올린다"는 뜻이죠.

처음 한 번만 주소 설정
택배로 치면 — 먼저 "이 금고로 보내줘"라고 주소를 등록하고(git remote add origin 주소), 그 다음 짐을 부쳐요(git push). 한 번 등록하면 다음부터는 git push 한 줄이면 끝.

우리 반찬가게 장부도 이렇게 금고에 처음 올려둘 거예요.

가게 폴더에서 git push를 처음 치면 어떤 일이 벌어질까요?

맞아요. push는 올리기예요. 내 노트북 장부는 그대로 있고, 똑같은 사본 한 부가 클라우드 금고에 더 생기는 거예요. 삭제가 아니라 복제·백업이죠. (반대로 내려받는 건 다음 레슨의 push 짝꿍이에요.)

가게 장부를 클라우드 금고에 연결하고 처음으로 올려봐요. 두 줄이에요 — ①주소 등록 ②올리기. (아래 주소는 예시예요.)

git remote add origin https://github.com/me/banchan-shop.git — ① 우리 가게 장부를 보낼 클라우드 금고 주소를 등록해요
git push -u origin main — ② 내 노트북의 커밋들을 금고로 처음 올려요
이제 노트북이 깨져도 가게 기록은 금고에 안전해요. 다음부터는 git push 한 줄이면 바뀐 부분이 또 올라가요.

반대로, GitHub에 있는 장부를 통째로 내 노트북에 받아오는 동작이 clone(클론)이에요.

통째로 복사
clone은 그냥 파일 몇 개가 아니라 가게의 모든 변화 기록(역사)까지 통째로 받아와요. 그래서 받은 직후 바로 git log로 그 가게가 어떻게 자라왔는지 다 볼 수 있어요.

남의 잘 만든 반찬가게를 받아 구경하거나, 동료가 만든 가게를 내 노트북에 가져올 때 써요.

옆 동네에 잘 만든 반찬가게 코드가 GitHub에 공개돼 있어요. 그 가게를 역사까지 통째로 내 노트북에 받아오는 명령은 무엇일까요?

정답! git clone 주소예요. 이 한 줄이면 그 가게의 폴더·파일·변화 기록 전체가 내 노트북에 그대로 복사돼요. 받은 다음엔 cd nice-shop으로 들어가 구경하면 돼요.
내 노트북에만 있던 반찬가게 장부를 GitHub 금고에 처음 올리는 흐름을 순서대로 맞춰보세요.
먼저 주소를 등록하고 → 처음 올리고(-u로 기본 연결) → 이후엔 git push 한 줄이면 끝. clone은 이 반대로 '받아오는' 쪽이라는 것만 기억하면 돼요.

이 모든 걸 손으로 외울 필요는 없어요. Claude에게 "남의 공개 프로젝트 구경하는 법"을 물어보며 익혀봐요. 가게 폴더에서 Claude를 켜고 대화해봐요.

GitHub에 공개된 남의 반찬가게 프로젝트를 내 노트북에 받아서 구경하려면 어떻게 해? 명령이랑 순서를 알려줘 — 남의 GitHub 프로젝트를 받아 구경하는 법을 물어봐요
이렇게 GitHub는 전 세계의 코드 진열장이에요. 잘 만든 가게를 받아 뜯어보는 게 가장 빠른 공부예요.
한 줄로
Git은 내 노트북의 장부, GitHub는 그 장부를 올려두는 클라우드 서재예요. 내 걸 올리면 push, 남의 걸 통째로 받으면 clone — 이 둘이 백업·공개·협업의 시작이에요.
다음 레슨에서
그런데 동료와 같은 가게 장부를 동시에 고치면 어떻게 될까요? 다음 '협업·GitHub — push·브랜치·머지' 레슨에서 여러 사람이 부딪히지 않고 함께 가게를 키우는 법을 배웁니다. 가게는 이제 혼자가 아니에요. 🌱