Git을 처음 접하는 분이라면 반드시 알아야 할 Git의 기본 동작 방식을 친절하게 설명해 드릴게요! 🧑‍💻💖 Work Directory(작업 디렉터리), Staging Area(스테이징 영역), Repository(저장소)의 개념과 차이점을 명확하게 이해하면 Git 사용이 더욱 쉬워질 거예요. 그럼 지금부터 차근차근 배워볼까요? 😊


1️⃣ Git의 기본 동작 방식 🧐

Git은 크게 세 가지 주요 영역으로 동작해요. 각각의 역할을 알아볼까요?

🏗️ 1. Work Directory (작업 디렉터리)

작업 디렉터리는 우리가 직접 코드 파일을 작성하고 수정하는 공간이에요.

  • 새 파일을 만들거나 기존 파일을 수정하면, Git은 이를 "변경됨(Untracked/Modified)" 상태로 인식해요.
  • 하지만 아직 Git이 이를 추적하지 않기 때문에, 파일을 저장소에 추가하려면 git add를 사용해야 해요.

🔹 Work Directory 주요 명령어

$ git status  # 변경된 파일 확인
$ git diff  # 변경 내용 비교

📤 2. Staging Area (스테이징 영역)

스테이징 영역은 커밋할 파일들을 임시로 저장하는 공간이에요.

  • git add 명령어를 사용하면, 변경된 파일이 스테이징 영역에 추가돼요.
  • 파일이 스테이징 영역에 추가 되면 파일이 변경되더라도 스테이징 영역에 있던 마지막 수정 상태가 보존이 되요.
  • 스테이징되지 않은 파일은 커밋할 때 포함되지 않아요.
  • 실수로 스테이징한 파일을 되돌리려면 git reset HEAD 파일명을 사용하면 돼요.

🔹 Staging Area 주요 명령어

$ git add 파일이름  # 파일을 스테이징
$ git add .  # 모든 변경된 파일 스테이징
$ git reset HEAD 파일이름  # 특정 파일을 스테이징 취소

🗄️ 3. Repository (저장소)

로컬 저장소는 git commit을 실행하면 변경 사항을 기록하는 공간이에요.

  • 커밋하면 Git이 변경 이력을 남기고, 이전 상태로 되돌릴 수 있도록 저장해요.
  • 커밋할 때는 의미 있는 메시지를 작성하는 것이 좋아요.
  • 저장소에 저장된 커밋은 git log로 확인할 수 있어요.

🔹 Repository 주요 명령어

$ git commit -m "커밋 메시지"  # 변경 사항 저장
$ git log --oneline  # 간단한 커밋 로그 확인
$ git show 커밋ID  # 특정 커밋의 상세 정보 확인

🔄 4. 원격 저장소 (Remote Repository)

원격 저장소는 GitHub, GitLab과 같은 클라우드 기반 저장소로, 여러 사람이 협업할 때 사용해요.

  • 로컬 저장소의 커밋을 원격 저장소에 업로드하려면 git push를 사용해요.
  • 최신 변경 사항을 가져오려면 git pull을 실행해요.
  • 로컬 저장소에 원격 저장소를 추가하려면 git remote add origin 저장소URL을 입력하면 돼요.

🔹 Remote Repository 주요 명령어

$ git push origin main  # 변경 사항 업로드
$ git pull origin main  # 원격 저장소에서 최신 코드 가져오기
$ git remote -v  # 연결된 원격 저장소 확인

➡️ 5. Git의 파일 흐름 

Git은 로컬에서 작업한 파일을 로컬 저장소에 커밋하고, 이를 원격 저장소와 동기화해요. 원격 저장소를 통해 여러 사용자가 협업하며 코드를 공유하고 관리할 수 있어요.


2️⃣ Git 작업 흐름과 명령어 정리 ✍️

🏗️ 1. 작업 디렉터리 (Work Directory)

$ git status  # 변경된 파일 확인

📤 2. 스테이징 영역 (Staging Area)

$ git add 파일이름  # 특정 파일 추가
$ git add .  # 모든 변경된 파일 추가

🗄️ 3. 로컬 저장소 (Repository)

$ git commit -m "커밋 메시지"  # 변경 사항 저장

☁️ 4. 원격 저장소 (Remote Repository)

$ git push origin main  # 원격 저장소에 업로드

🔄 5. 최신 코드 가져오기 (Pull)

$ git pull origin main  # 최신 코드 가져오기

🎉 마무리

Git의 기본 동작 방식과 주요 명령어를 익히고, 이제 효율적인 버전 관리가 가능해졌어요! 🎉 Git을 활용해 더 나은 개발 환경을 만들어보세요. 😊

앞으로도 Git을 활용한 멋진 프로젝트들을 기대합니다! 💻✨

+ Recent posts