저장소는 GitHub 작업의 출발점이다
GitHub에서 가장 먼저 익혀야 할 단위는 저장소입니다. 저장소는 프로젝트를 담는 공간입니다. 코드 파일, 문서, 이미지, 작업 기록, 이슈, Pull Request가 모두 저장소를 중심으로 쌓입니다.
쉽게 말해 저장소는 하나의 프로젝트 폴더입니다. 내 컴퓨터에 프로젝트 폴더를 만들듯이 GitHub에도 프로젝트 공간을 만드는 것입니다. 차이가 있다면 GitHub 저장소에는 변경 기록이 남고, 다른 사람과 함께 작업할 수 있으며, 필요하면 전 세계에 공개할 수도 있다는 점입니다.
이번 장에서는 GitHub 웹사이트에서 첫 번째 저장소를 직접 만들어보겠습니다. 실습 이름은 hello-github입니다. 이 저장소를 만들면서 공개 범위, README, .gitignore, 라이선스의 의미를 함께 익힙니다.

Public과 Private 선택하기
저장소를 만들 때 가장 먼저 고민하는 항목 중 하나가 공개 범위입니다. GitHub에서는 보통 Public과 Private 중 하나를 선택합니다.
Public 저장소는 누구나 볼 수 있는 저장소입니다. 검색을 통해 발견될 수도 있고, 링크를 아는 사람이라면 코드를 확인할 수 있습니다. 포트폴리오용 프로젝트, 오픈소스 프로젝트, 학습 결과물을 공유하고 싶을 때 적합합니다.
예를 들어 다음과 같은 프로젝트는 Public으로 만들기 좋습니다.
개인 포트폴리오 웹사이트
간단한 계산기 앱
블로그 예제 코드
공개해도 되는 학습용 프로젝트
반대로 Private 저장소는 허용된 사람만 볼 수 있습니다. 개인 연습, 회사 업무, 아직 공개하고 싶지 않은 프로젝트에 적합합니다.
예를 들어 다음과 같은 프로젝트는 Private으로 만드는 편이 안전합니다.
개인 일기 앱처럼 민감한 내용이 들어갈 수 있는 프로젝트
회사 코드나 고객 정보가 관련된 프로젝트
아직 완성되지 않아 공개하고 싶지 않은 실험 프로젝트
API 키, 설정값을 잘못 올릴 가능성이 있는 초보 연습 프로젝트
처음 GitHub를 연습한다면 둘 중 무엇을 선택해도 괜찮습니다. 다만 다른 사람에게 보여줄 목적이 있다면 Public, 혼자 연습하며 실수해도 부담 없게 만들고 싶다면 Private을 선택하세요.
이번 실습에서는 GitHub 사용법을 익히는 것이 목적이므로 Public으로 만들어보겠습니다. 단, 실제 비밀번호나 API 키 같은 민감한 정보는 절대 올리지 않습니다.
README.md는 프로젝트의 첫인상이다
저장소를 방문하면 가장 먼저 보이는 문서가 보통 README.md입니다. README는 프로젝트 설명서 역할을 합니다. 이 프로젝트가 무엇인지, 어떻게 실행하는지, 어떤 기술을 사용했는지 알려줍니다.
파일 이름 뒤의 .md는 Markdown 문서라는 뜻입니다. Markdown은 간단한 기호로 제목, 목록, 코드 블록을 표현하는 문서 형식입니다. GitHub에서는 README.md를 보기 좋게 변환해서 보여줍니다.
좋은 README에는 처음부터 많은 내용이 필요하지 않습니다. 초보 단계에서는 다음 세 가지만 있어도 충분합니다.
프로젝트 제목
프로젝트 소개
실행 방법 또는 사용 방법
예를 들어 hello-github 저장소의 README는 이렇게 시작할 수 있습니다.
# hello-github
GitHub 저장소 만들기를 연습하는 첫 번째 프로젝트입니다.
## 소개
이 저장소는 GitHub에서 README 파일을 만들고 첫 커밋을 남기는 연습용 프로젝트입니다.
## 실행 방법
아직 실행할 프로그램은 없습니다.
README 파일을 수정하면서 GitHub의 기본 흐름을 익힙니다.여기서 #은 가장 큰 제목을 뜻합니다. ##는 그보다 작은 제목입니다. README 안에서는 이렇게 제목을 나누면 읽기 쉽습니다.
README는 프로젝트가 커질수록 더 중요해집니다. 나중에 다시 봤을 때 내가 만든 프로젝트를 빠르게 이해할 수 있고, 다른 사람이 저장소에 들어왔을 때도 무엇을 봐야 하는지 알 수 있습니다.
.gitignore는 올리지 않을 파일 목록이다
GitHub에 모든 파일을 올리면 좋을 것 같지만 실제로는 그렇지 않습니다. 올리면 안 되는 파일도 있습니다. 이때 사용하는 파일이 .gitignore입니다.
.gitignore는 Git이 추적하지 않아도 되는 파일이나 폴더를 적어두는 목록입니다. 여기에 적힌 파일은 실수로 커밋에 포함되는 것을 막을 수 있습니다.
대표적으로 제외하는 파일은 다음과 같습니다.
node_modules/: Node.js 프로젝트에서 설치되는 외부 라이브러리 폴더.env: 비밀번호, API 키, 데이터베이스 주소 같은 환경 변수 파일dist/,build/: 코드를 실행하거나 배포하기 위해 만들어진 결과물 폴더.DS_Store: macOS가 자동으로 만드는 시스템 파일로그 파일: 실행 중 생긴 기록 파일
예를 들어 JavaScript 프로젝트라면 .gitignore에 다음처럼 적을 수 있습니다.
node_modules/
.env
dist/
build/
.DS_Store특히 .env 파일은 조심해야 합니다. 이 파일에는 외부 서비스 접속 키나 비밀번호가 들어가는 경우가 많습니다. Public 저장소에 이런 파일이 올라가면 누구나 볼 수 있습니다. 초보 단계에서는 코드를 올리는 것보다 민감한 정보를 올리지 않는 습관이 더 중요합니다.
GitHub에서 저장소를 만들 때 .gitignore template을 선택할 수 있습니다. 프로젝트 언어가 정해져 있다면 예를 들어 Node, Python, Java 같은 템플릿을 고르면 자주 제외하는 파일 목록이 자동으로 들어갑니다.
이번 hello-github 실습은 단순 README 연습이므로 .gitignore를 꼭 만들 필요는 없습니다. 하지만 실제 프로젝트를 시작할 때는 거의 항상 .gitignore를 함께 준비한다고 기억해두세요.
라이선스는 사용과 공유 조건을 정한다
저장소를 만들 때 License를 선택하는 항목도 볼 수 있습니다. 라이선스는 다른 사람이 내 코드를 어떻게 사용할 수 있는지 정하는 규칙입니다.
Public 저장소라고 해서 무조건 마음대로 써도 된다는 뜻은 아닙니다. 코드를 공개했다는 것과 사용을 허락했다는 것은 다릅니다. 그래서 오픈소스 프로젝트는 보통 라이선스 파일을 함께 둡니다.
초보 단계에서는 세부 법률까지 외울 필요는 없습니다. 다음 정도만 이해하면 됩니다.
라이선스가 있으면 사용, 수정, 배포 조건을 확인할 수 있다.
라이선스가 없으면 다른 사람이 사용해도 되는지 불분명하다.
오픈소스로 공유할 프로젝트라면 라이선스를 선택하는 것이 좋다.
많이 쓰이는 예로 MIT License가 있습니다. 비교적 간단하고 자유롭게 사용할 수 있는 편이라 개인 학습 프로젝트나 작은 오픈소스 프로젝트에서 자주 보입니다. 하지만 회사 프로젝트나 중요한 서비스 코드라면 라이선스를 가볍게 선택하면 안 됩니다. 조직의 정책이나 법적 검토가 필요할 수 있습니다.
이번 실습에서는 라이선스를 반드시 추가하지 않아도 됩니다. 다만 나중에 공개 프로젝트를 만들 때는 README와 함께 LICENSE 파일도 확인하는 습관을 들이세요.
실전 예시: hello-github 저장소 만들기
이제 GitHub 웹사이트에서 직접 저장소를 만들어보겠습니다.
먼저 GitHub에 로그인한 뒤 오른쪽 위의 + 버튼을 누릅니다. 메뉴에서 New repository를 선택합니다.
저장소 생성 화면에서 다음처럼 입력합니다.
Repository name:
hello-githubDescription:
GitHub 첫 저장소 만들기 연습Visibility:
PublicAdd a README file: 체크
Add .gitignore: 일단 선택하지 않음
Choose a license: 일단 선택하지 않음
입력이 끝났다면 Create repository 버튼을 누릅니다. 잠시 후 hello-github 저장소가 생성됩니다.
여기서 Add a README file을 체크했기 때문에 GitHub가 자동으로 README.md 파일을 만들고 첫 커밋까지 생성합니다. 커밋은 변경 사항을 저장한 기록입니다. 지금은 커밋을 완벽히 이해하지 못해도 괜찮습니다. 중요한 것은 저장소의 첫 기록이 만들어졌다는 점입니다.
생성된 저장소 화면에서 README 내용이 보일 것입니다. 아직 내용이 짧다면 직접 수정해보겠습니다.
README.md 파일을 클릭합니다.
오른쪽 위의 연필 아이콘을 누릅니다.
아래 예시처럼 내용을 수정합니다.
# hello-github
GitHub 저장소 만들기를 연습하는 첫 번째 프로젝트입니다.
## 소개
이 저장소는 GitHub의 기본 기능을 익히기 위한 연습용 저장소입니다.
README 파일을 작성하고, 변경 내용을 커밋하는 과정을 연습합니다.
## 배운 내용
- 저장소 만들기
- README 작성하기
- 첫 커밋 만들기수정을 마쳤다면 화면 아래쪽으로 내려갑니다. GitHub는 변경 내용을 저장할 때 커밋 메시지를 입력하게 합니다.
커밋 메시지에는 이번 변경이 무엇인지 짧게 적습니다.
예를 들어 다음처럼 쓸 수 있습니다.
README 내용 추가그다음 Commit changes 버튼을 누릅니다. 이제 README 수정 내용이 저장소에 기록되었습니다. 저장소 생성 때 GitHub가 자동으로 만든 커밋과 별개로, 이번에는 내가 직접 내용을 바꾸고 만든 커밋입니다.
저장소를 만들 때 기억할 기준
처음 저장소를 만들 때 모든 설정을 완벽하게 고르려고 오래 고민할 필요는 없습니다. 하지만 아래 기준은 기억해두면 좋습니다.
공개해도 되는 프로젝트라면 Public을 선택합니다. 다른 사람에게 보여줄 포트폴리오나 학습 결과물에 적합합니다.
혼자 연습하거나 민감한 내용이 들어갈 가능성이 있다면 Private을 선택합니다. 초보자는 실수로 비밀 값을 올릴 수 있으므로 처음에는 Private으로 연습하는 것도 좋은 방법입니다.
README.md는 가능하면 처음부터 만듭니다. 프로젝트 설명, 실행 방법, 배운 내용을 적어두면 나중에 다시 볼 때 큰 도움이 됩니다.
.gitignore는 프로젝트 언어와 도구에 맞게 설정합니다. node_modules, .env, 빌드 결과물처럼 저장소에 올릴 필요가 없거나 올리면 위험한 파일을 제외합니다.
라이선스는 공개 프로젝트에서 중요합니다. 다른 사람이 내 코드를 사용할 수 있는 조건을 정하는 파일이기 때문입니다.
이번 장에서 만든 결과
이번 장에서는 hello-github라는 첫 번째 저장소를 만들었습니다. 그리고 README.md를 추가하고 내용을 수정한 뒤 커밋까지 생성했습니다.
이제 GitHub에서 프로젝트 공간을 만드는 기본 흐름을 경험했습니다. 다음 장에서는 Git의 기본 흐름을 더 자세히 살펴봅니다. 파일을 수정하고, 변경 사항을 확인하고, 커밋으로 기록하는 과정이 어떻게 이어지는지 배워보겠습니다.
이 노트는 보도·비평·교육·연구 목적으로 작성되었습니다. 저작권 문의가 있으시면 에서 알려주세요.
