TIL/웹의 이해

Git & Github

시럽이 2022. 7. 2. 15:30

👾 Git이란?

Git의 공식 명칭은 분산 버전 관리 시스템 (VCS) 이다.

쉽게 말해, 프로젝트 파일의 변경 사항을 추적하는 시스템이다. 이를 통해 개발자들은 프로젝트의 변경 사항을 기록하고, 특정 시점의 버전으로 언제든 돌아갈 수 있다. 이런 버전 관리 시스템은 많은 사람들이 효율적으로 함께 작업하고, 프로젝트를 중심으로 협업할 때 사용할 수 있다. 각 개발자가 자신만의 프로젝트 버전을 본인 컴퓨터에 갖게 된다. 나중에 이러한 개별 버전의 프로젝트를 병합하여 기준이 되는 버전의 프로젝트에 적용 할 수 있게 된다.

 

그렇다면 버전 관리를 하는 이유는 뭘까?

아래 왼쪽 이미지를 보자.

 

 

파일이나 문서를 왼쪽 이미지처럼 관리한다면 이러한 단점이 있다.

  • 만든 사람만 알아볼 수 있음
  • 원본파일 수정본이 혼재되어 삭제 위험성 있음
  • 언제 어떻게 뭐가 바뀌었는지 추적이 어려움
  • 파일이 계속 생겨서 불필요한 용량을 차지함
  • 수정 단계, 순서를 알기 어려움

 

이러한 단점을 해결하고자 버전 관리를 한다.

코드 버전 관리를 하는 이유를 아래 리스트에서 확인해 볼 수 있다.

  • 수정할때마다 파일을 새로 만들면 관리가 힘듦
  • 언제든 이전 버전의 코드로 돌아갈 수 있음
  • 이력을 남기기 위해
  • 하나의 프로젝트를 두고 여러명의 개발자들이 협업할 수 있음

 

🐱🐙 Github이란?

GitHubGit 을 사용한 프로젝트들의 저장소이자 Git repository를 위한 호스팅 플랫폼이다. GitHub (및 기타 유사한 플랫폼) 없이도 Git을 사용할 수 있지만 다른 개발자와 같은 프로젝트를 두고 협업하거나 내 코드를 공유하기는 어렵다.

GitHub repository는 모든 프로젝트 파일들과 코드의 히스토리를 관리할 수 있게 해주고, public 혹은 private 하게 협업할 수 있게 해준다.

GitHub은 개발자들의 SNS 라고도 볼 수 있다. GitHub 유저들은 서로 follow 하고, 협업하기도 하면서, 다양한 방법으로 교류할 수 있다. 다른 사람들이 나의 GitHub 계정을 통해 내가 어떤 개발자인지도 알 수 있고, 내가 진행했던 프로젝트를 확인할 수도 있다.