🏛️ [Archive] 개발 프로젝트 & 회고/GitHub 관리 도구 🛠️

[Python] Git의 기본 작업 흐름🛠️

히주 2024. 12. 26. 22:42

 

 


🛤️ Git의 기본 작업 흐름

Git은 분산 버전 관리 시스템으로 코드 변경 사항을 추적하고 여러 개발자가 협업할 수 있도록 돕습니다.

Git으로 형상관리를 하는 경우 진행되는 기본적인 작업 흐름입니다.

 

 


 

📂 Git의 저장 영역 구분

Git은 작업 중인 파일을 4군데 영역으로 나누어져 파일이 이동하며 관리하게 됩니다.

이런 저장 영역 구분은 Git의 핵심 개념으로 파일 상태를 명확하게 관리할 수 있도록 돕습니다.

  1. 작업 디렉터리 (Local Working Directory)
    실제로 파일을 수정하는 영역입니다. 이곳에서 파일을 추가하거나 편집합니다.
  2. 스테이징 영역 (Staging Area)
    커밋할 파일을 준비하는 임시 저장소입니다. git add 명령어로 파일을 스테이징 영역에 추가합니다.
  3. 로컬 저장소 (Local Repository)
    커밋된 파일이 저장되는 영역입니다. git commit을 실행하면 스테이징 영역의 파일이 로컬 저장소에 기록됩니다.
  4. 원격 저장소 (Remote Repository)
    다른 개발자와 공유하기 위해 사용하는 저장소입니다. git push 명령어로 커밋을 원격 저장소에 업로드합니다.

 

 


 

🔄 업로드 파일 커밋 및 동기화

파일을 수정한 후 원격 저장소에 업로드하고 동기화하는 과정은 다음과 같습니다.

1. 레포지토리 생성

  • GitHub 사이트에서 Public Template을 사용해 새로운 원격 저장소(Remote Repository)를 생성합니다.

2. Local Repository 복제

  • Codespace(가상 환경)에서 GitHub의 원격 저장소를 로컬 저장소(Local Repository)로 복제합니다.
    • git clone – 원격 저장소 복제
  • Visual Studio Code에서 파일을 수정하고 개발을 진행합니다.

3. 파일 수정 및 커밋

  • 로컬 저장소에서 파일을 수정하고 변경된 파일들커밋(commit) 합니다.
    • git add – 변경된 파일 스테이징
    • git commit -m "메시지" – 변경 사항 커밋

4. 파일 업로드 및 동기화

  • 커밋된 파일 GitHub의 원격 저장소에 업로드(push)됩니다.
    • git push – 원격 저장소로 업로드
  • 로컬 PC에서 필요한 파일을 업로드하거나 로컬에서 작업한 파일을 Codespace에 업로드할 수 있습니다.

5. 원격 저장소와 동기화

  • 변경 사항이 생길 경우 GitHub 원격 저장소로컬 저장소동기화(fetch, pull)하여 최신 상태로 유지합니다.
    • git pull – 원격 저장소의 변경 사항을 로컬로 가져오기 (동기화)