📚 CS/그 외

GitHub의 동작 원리, 작업 공간

수댕ʕت̫͡ʔ 2024. 11. 2. 20:24

1️⃣ Git과 GitHub의 차이

Git은 분산 버전 관리 시스템이다. 소스 코드의 변경 사항을 추적하고, 코드의 버전을 관리하며, 여러 개발자와 협업할 수 있게 도와준다. 여기서 핵심은 Git은 중앙 서버에 의존하지 않고 각 개발자가 로컬에서 자신의 작업을 관리할 수 있다는 점이다.

 

GitHub는 Git을 사용하는 프로젝트를 관리하고 협업할 수 있도록 지원하는 클라우드 기반 플랫폼이다. GitHub는 코드를 저장소 서비스를 지원할 뿐만 아니라. Pull Request, Issus관리 등 다양한 기능을 제공한다. 

 

 

2️⃣ Git의 동작 원리

 

Git의 기본 작업 흐름은  크게 "작업 공간", "스테이징 영역", " 로컬 저장소", "원격 저장소" 4개의 공간을 통해 이루어진다.

 

예를 들어! 내가 컴퓨터에서 코드를 작성하고 Git를 사용해 이 코드를 저장소에 추가하는 과정은 다음과 같다.

 

  1. 작업 공간 : 내가 코드를 작성하고 수정하는 공간이다. 이 공간에서 파일을 수정한 상태는 아직 Git에서 관리되지 않는다. 단순히 로컬의 파일로 존재한다.
  2.  git add : git add 명령어를 사용해 수정된 파일이 "Staging 영역"에 이 추가된다. 이 영역은 커밋 준비 단계로, 아직 영구 저장된 상태는 아니지만 커밋할 목록에 포함된 상태이다.
  3. git commit : git commit -m "커밋 메시지" 명령어를 실행하면 "Staging 영역" 에 있는 변경 사항이 "Local 저장소"에 영구 저장된다. 
  4. git push : 마지막으로 git push 명령어를 실행하면, 로컬 저장소에 있는 커밋이 "Remote 저장소"에 업로드된다. 즉, GitHub에 업로드되는 것이다.

 

그림으로 살펴보면 다름과 같다.

 

 

3️⃣ 코드로 살펴보는 동작 원리

 

1. git add

<Woring Directory  -> Staging Area>

 

2. git commit

<Staging Area -> Local Repository>

 

3. git push

<Local Repository -> Remote Repository>

 

 

 

https://f-lab.kr/insight/git-vs-github

 

깃(Git)과 깃허브(GitHub)의 차이점 및 협업에서의 활용 방법

깃(Git)과 깃허브(GitHub)의 기본 개념, 주요 차이점 및 협업 프로젝트에서의 활용 방법에 대해 설명합니다.

f-lab.kr

https://www.hanbit.co.kr/channel/category/category_view.html?cms_code=CMS2036561776

 

[Git, GitHub] 깃, 깃허브란?

✅버전 관리란?먼저 버전 관리란? 개발 경험이 없더라도 누구나 한 번쯤은 버전 관리의 경험이 있을거예요. RPG 게임할 때를 떠올려 보세요. 한 캐릭터로 게임을 진행하다가 게임을 종료하기 전

www.hanbit.co.kr