Git & GitHub 강의 · 1회차
1 / 13
1회차 · 01 / 13
개념 이해
Git과 GitHub, 무엇이 다를까?
버전 관리의 개념과 두 도구의 역할을 이해합니다
🌿
Git
내 컴퓨터에 설치하는 버전 관리 도구. 파일 변경 이력을 추적하고 이전 상태로 되돌릴 수 있습니다.
🐙
GitHub
Git 저장소를 인터넷에 올려두는 클라우드 플랫폼. 협업하거나 작업물을 공개할 수 있습니다.

Git은 혼자서도 사용할 수 있고, GitHub 없이도 동작합니다
GitHub는 Git이 있어야 의미가 있습니다 — Git이 먼저입니다
비유: Git = 일기장, GitHub = 일기장을 올려두는 클라우드
1회차 · 02 / 13
Git 설치
Git 설치하기
설치 과정의 주요 체크포인트를 놓치지 않도록 주의합니다
1
git-scm.com 접속 후 다운로드
운영체제에 맞는 파일 자동 감지
2
.exe 파일 실행 → 체크포인트 확인
오른쪽 항목 반드시 확인!
3
설치 확인 — Git Bash 열고 입력
git --version
4
사용자 정보 등록 (최초 1회)
git config --global user.name "이름"
git config --global user.email "이메일"
기본 에디터 → Visual Studio Code 선택
기본값 Vim은 초보자에게 어렵습니다
기본 브랜치 이름 → main 입력
"Override the default branch name" 선택
PATH 환경변수 → 두 번째 옵션
"Git from the command line and also 3rd-party"
⚠️
줄바꿈 설정 → Windows 기본값 유지
Checkout Windows-style, commit Unix-style
🚫
나머지는 모두 기본값(Next)으로!
위 3가지 외에는 건드리지 않는 것이 안전
1회차 · 03 / 13
Git Bash
Git Bash 기본 명령어
폴더와 파일을 다루는 기본 명령어를 익히고 저장소를 초기화합니다
pwd
현재 내가 있는 위치 확인
ls
현재 폴더 내용 목록 확인
ls -a
숨김 파일(.git 등)까지 전부 확인
mkdir 폴더명
새 폴더 만들기
cd 폴더명
해당 폴더로 이동
cd ..
상위 폴더로 이동
git init
현재 폴더를 Git 저장소로 초기화
git status
현재 상태 확인 — 가장 자주 쓰는 명령어!
⚠️
git init 후 생기는 .git 폴더는 절대 삭제하지 마세요! 모든 버전 정보가 여기에 저장됩니다.
$ mkdir my-project && cd my-project $ git init Initialized empty Git repository in /my-project/.git/ $ ls -a . .. .git ← .git 폴더가 생겼어요!
1회차 · 04 / 13
직접 해보기
Git Bash 명령어 실습
pwd → mkdir → cd → git init → git status 순서로 따라해보세요
힌트:pwdlsls -amkdircdcd ..git initgit status
MINGW64~/
Git Bash 실습 환경입니다. 힌트를 클릭하거나 직접 입력하세요! 
~/ 
학습 진행도
pwdlsls -amkdircdcd ..git initgit status
1회차 · 05 / 13
문서 만들기
Git Bash로 문서 만들기
touch, echo, cat 명령어로 파일을 만들고 내용을 입력합니다
① touch — 빈 파일 만들기
touch README.md
→ 내용이 없는 빈 파일 생성. 나중에 에디터로 내용 입력
② echo — 내용을 바로 입력하면서 파일 만들기 ⭐ 가장 빠른 방법!
echo "안녕하세요" > hello.txt
echo "두 번째 줄입니다" >> hello.txt
→ > 는 새로 쓰기 (덮어씀)  |  >> 는 이어서 쓰기 (추가)
③ cat — 파일 내용 확인하기
cat hello.txt
→ 파일 내용을 터미널에 바로 출력
💡
> 와 >> 의 차이를 꼭 기억하세요! > 는 기존 내용을 지우고 새로 씁니다. >> 는 기존 내용 아래에 추가합니다.
1회차 · 06 / 13
직접 해보기
문서 만들기 실습
touch → echo > → echo >> → cat 순서로 파일을 만들어보세요
⚠️ > 와 >> 차이에 주의!  > 는 덮어쓰기  >> 는 이어서 추가
힌트:touch README.mdecho > (새로쓰기)echo >> (추가)cat README.mdls
MINGW64 — 문서 만들기 실습 (~/my-project)
my-project 폴더 안에 있는 상태로 시작합니다!현재 파일: (없음) — touch 또는 echo 로 파일을 만들어보세요 
~/my-project 
학습 진행도
touchecho >echo >>catls 확인덮어쓰기 체험
1회차 · 07 / 13
add · commit
add 및 commit 하기
파일 변경사항을 Git에 기록하는 핵심 두 단계를 익힙니다
작업 공간
Working Directory
파일을 편집하는 곳
git add
임시 저장소
Staging Area
커밋할 파일을 모아두는 곳
git commit
로컬 저장소
Repository
버전이 기록되는 곳
git add 파일명
특정 파일을 Staging Area에 올리기
git add .
변경된 모든 파일을 한번에 올리기 (가장 많이 씀)
git commit -m "메시지"
메시지와 함께 현재 상태를 기록 (버전 생성)
git log --oneline
커밋 이력을 한 줄로 간략하게 확인
💡
커밋 메시지는 구체적으로 적으세요. "수정함" 보다는 "README에 작성자 정보 추가"처럼요. 나중에 이력을 볼 때 큰 도움이 됩니다.
1회차 · 08 / 13
직접 해보기
add & commit 실습
git status → git add → git commit → git log 흐름을 직접 체험하세요
힌트:git statusgit add 파일git add .git commitgit log
MINGW64 — add & commit 실습 (~/my-project)
README.md 파일이 있는 상태로 시작합니다. git status 로 현재 상태를 확인해보세요! 
~/my-project 
학습 진행도
git statusgit addgit commitgit log수정 후 재커밋
1회차 · 09 / 13
초보자 필수
.gitignore — 올리면 안 되는 파일 관리
GitHub에 올리면 안 되는 파일을 Git이 무시하도록 설정합니다
🚫
비밀번호 · API 키 파일
.env 파일에 담긴 비밀 정보가 공개되면 매우 위험!
⚠️
node_modules 폴더
수천 개 파일이 들어있어 올리면 느리고 용량 낭비
⚠️
운영체제 자동 생성 파일
.DS_Store(Mac), Thumbs.db(Windows) 등
터미널에서 직접 만들기
echo ".env" > .gitignore
echo "node_modules/" >> .gitignore
echo ".DS_Store" >> .gitignore
.gitignore 내용 예시
# 환경변수
.env

# 의존성 폴더
node_modules/

# 운영체제 파일
.DS_Store
💡
gitignore.io 사이트에서 프로젝트 종류(Python, Node 등)를 입력하면 .gitignore 내용을 자동으로 만들어줍니다!
1회차 · 10 / 13
GitHub Push
GitHub 로그인 후 Push하기
로컬 저장소의 내용을 GitHub 원격 저장소에 올립니다
내 컴퓨터
로컬 저장소
commit 완료 상태
git push
인터넷
GitHub 원격 저장소
누구나 접근 가능
1
GitHub 로그인
github.com 접속 후 로그인
2
새 레포지토리 생성
+ 버튼 → New repository → 이름 → Create
3
HTTPS 주소 복사
생성된 레포의 주소 복사
1
원격 저장소 연결
git remote add origin 주소
2
브랜치 이름 설정
git branch -M main
3
Push 실행
git push -u origin main
💡
두 번째 push부터는 git push 만 입력하면 됩니다. -u 옵션은 최초 연결 시 한 번만 필요합니다.
1회차 · 11 / 13
직접 해보기
GitHub Push 실습
remote add → branch -M → push 순서로 GitHub에 올려보세요
힌트:remote addremote -vbranch -Mpush (최초)push (이후)
MINGW64 — GitHub Push 실습 (~/my-project)
커밋이 완료된 상태로 시작합니다. 이제 GitHub에 올려볼게요!💡 git remote add origin 주소 부터 시작하세요. 힌트 버튼을 활용하세요! 
~/my-project 
학습 진행도
remote addremote -vbranch -M첫 push두 번째 push
1회차 · 12 / 13
브랜치
브랜치 기초 익히기
원본을 건드리지 않고 독립된 작업 공간을 만드는 방법을 익힙니다
main
C1
C2
C3
C6
← merge
feature
C4
C5
git branch
브랜치 목록 (* 가 현재 위치)
git branch 이름
새 브랜치 만들기
git switch 이름
해당 브랜치로 이동
git switch -c 이름
만들면서 바로 이동
git merge 브랜치명
현재 브랜치에 합치기
git branch -d 이름
병합 완료된 브랜치 삭제
git log --oneline
한 줄로 커밋 이력 확인
💡
main은 항상 안정된 상태로 유지하고, 새 작업은 별도 브랜치에서 하세요. 브랜치는 복사본이 아니라 작업 방향이 나뉘는 것입니다.
1회차 · 13 / 13
직접 해보기
브랜치 실습
브랜치 만들기 → 이동 → 커밋 → main으로 돌아와 merge까지 해보세요
힌트:git branchswitch -cswitch mainadd & commitgit mergebranch -dgit log
MINGW64 — 브랜치 실습main
main 브랜치에 커밋이 있는 상태로 시작합니다!💡 git branch 로 현재 브랜치를 확인하고, git switch -c feature 로 새 브랜치를 만들어보세요 
~/my-project (main) 
학습 진행도
git branch브랜치 생성feature 커밋main 복귀merge브랜치 삭제