개발 공부 4일차..
개발자에게 필수라고 하는 Git에 대해 오늘 공부했지만..
처음 배우는거다 보니 개념이나 용어가 너무 어려웠다..
일단 내가 이해한대로 한번 적어보겠음요..

Git이란?
Git은 프로젝트의 저장 이력 관리 시스템이라고 할 수 있다.
쉽게 말하면 게임 세이브 기능 같은 느낌
프로젝트를 작업하다가 원하는 시점에 저장하고, 다시 돌아갈 수도 있고, 작업 흐름도 관리할 수 있음.
Git은 보통 이런 흐름으로 동작한다고 함.
[작업 중인 파일]
↓
[저장할 파일 고르기]
↓
[사진 찍듯 저장(commit)]
Git의 주요 개념
Working Tree / Working Directory
- 내가 실제로 작업하고 있는 공간
- 현재 수정 중인 파일들이 있는 곳
💡 쉽게 말하면
책상 위 작업 공간이라고 이해하면 됨.
Stage Area
- 저장(commit)할 파일들을 미리 담아두는 공간
- commit 하기 전에 “이 파일 저장할래!” 하고 선택하는 곳
💡 쉽게 말하면
사진 찍기 전에 촬영할 대상을 정해두는 느낌.
Local Repository (Local Directory)
- commit들이 저장되는 Git 저장소
- 내가 저장한 작업 기록들이 보관되는 공간
💡 게임으로 치면 세이브 슬롯 느낌
Git 핵심 용어
commit
- 프로젝트 상태를 저장한 기록
- 특정 시점의 작업 내용을 저장하는 것
💡 게임 저장 포인트라고 생각하면 이해하기 쉬움.
snapshot
Git은 파일 하나만 저장하는게 아니라
그 순간 프로젝트 전체 모습을 사진처럼 저장한다고 함.
그래서 snapshot은
💡 commit 당시 프로젝트 전체 상태 라고 이해하면 됨
HEAD
- 현재 내가 보고 있는 commit 위치를 말함
- 보통 최신 commit를 가리키고 있음
💡 책갈피 같은 개념이라고 생각하면 편함.
branch
- 작업을 나누는 기능
- 기존 작업은 안전하게 두고 새로운 작업 공간을 만드는 느낌
💡 메인 세계는 안전하게 두고
새로운 평행세계를 하나 만드는 거라고 생각하면 됨 🌎
예를 들어:
- main 브랜치 → 실제 사용중인 코드
- feature-login 브랜치 → 로그인 기능 개발중
이런 식으로 사용함.
merge
- branch를 합치는 기능
- 새로운 세계에서 만든 작업을 기존 세계에 합치는 것
💡 새로운 기능 개발 끝나면
main 브랜치와 합쳐주는 작업이라고 보면 됨.
Git Bash란?
"윈도우에서 Git 명령어를 입력할 수 있게 해주는 터미널"
윈도우 기본 cmd는 리눅스 명령어와 조금 다름.
그래서 "윈도우에서도 리눅스 느낌으로 Git을 사용하게 해주자!"
라는 느낌으로 만들어진 도구라고 한다.
오늘 설치완료..ㅎㅎ
왜 리눅스를 사용할까?
1. 무료임
리눅스는 오픈소스 기반이라 무료로 사용할 수 있음.
이게 제일 큰 이유? 인듯.
2. 개발 환경이 리눅스 기반인 경우가 많음
많은 서버와 개발 환경이 리눅스 기반으로 동작함.
그래서 개발자들은:
- 리눅스 명령어
- 터미널 환경
- Bash
같은 것들을 자주 사용하게 됨.
특히 백엔드 개발에서는 리눅스 환경을 자주 접하게 된다고 함
'웹 개발 기초' 카테고리의 다른 글
| [Git] 팀 프로젝트에서 Git 협업 흐름 정리 (develop, feature, merge 이해하기) (0) | 2026.07.11 |
|---|---|
| REST API (0) | 2026.05.28 |
| 서버와 HTTP 정리 - 백엔드 개발자의 핵심 개념 (0) | 2026.05.27 |
| 웹개발 기초 정리 - HTML, CSS, JavaScript (0) | 2026.05.27 |
| 웹개발 기초 정리 - 프론트엔드와 백엔드, 그리고 웹의 동작 원리 (0) | 2026.05.26 |