Image
CI\CD/Git

[Git] Git 과 Github은 무엇이 다른가?

Git과 Github의 차이점

많은 사람들이 Git과 Github이 같은 것이라고 생각한다. 하지만 Git은 Github과 동일하면서 다르다.

 

Git은 개인 컴퓨터에서 돌아가는 Version Control System이다. Git을 사용하기 위해서는 개인 계정을 등록할 필요도 없으며 인터넷을 연결할 필요도 없다. 반대로 Github은 Github라 불리는 회사에서 서비스하고 있는 서버에 올라간 Git 이기 때문에 사용하기 위해 개인 계정을 등록해야 하며, 인터넷에 연결되어야 사용할 수 있다. 

 

즉, Github는 Git 소프트웨어를 지원하는 일종의 클라우드 서비스이다. 우리가 휴대폰이나 컴퓨터에서 클라우드를 사용할 때 우리의 기기에 파일을 저장해놓으면 우리의 기기에서 사용하기 위해서는 계정이나 인터넷이 필요 없다. 하지만, 클라우드에 올라간 파일은 사용하기 위해 계정과 인터넷이 필요하다. Github을 클라우드 서비스 관점에서 이해하면 쉽게 이해할 수 있다.

 

Github은 클라우드 서비스인 만큼 다양한 추가적인 서비스를 제공하는데 Git과 Github의 차이점은 다음 4가지 관점에서 살펴보도록 하자.

  • Local Git과 Remote Git
  • UI를 지원하는 Github
  • PR 기능을 지원하는 Github
  • Github의 다양한 기능들

 

Local Git과 Remote Git

개인 컴퓨터에서 사용하는 Git을 Local Git이라 부르며, Github이나 Gitlab과 같은 클라우드에 저장하는 Git을 Remote Git이라 부른다. 로컬에 저장되는 Git은 공유가 되지 않으며, 공유를 위해서는 Remote Git 서비스를 제공하는 Github이나 Gitlab에 올려야 한다.

 

 

UI를 지원하는 Github

Local Git은 기본적으로 터미널을 사용한다. 따라서 Local Git은 File Managing을 위해 UI 요소가 지원되지 않는다. 반대로 Github은 Git을 터미널로 이용할 수 있는 방식 뿐만 아니라 github.com 웹사이트를 통해 UI적으로 사용할 수 있도록 돕는다.

*물론 로컬 Git을 시각적으로 조작할 수 있는 서비스를 제공하는 GitKraken, SourceTree, Intellij(IDE 내부에서 제공) 와 같은 프로그램들도 있다.  

 

 

PR 기능을 지원하는 Github

PR이란  Pull Request의 약자로 특정 코드 버전에 코드를 통합할 수 있도록 다른 개발자들에게 리뷰를 요청하는 기능이다. Git에는 기본적으로 PR기능이 없으며, PR 기능은 코드 리뷰를 돕기 위해 Github에서 만들어낸 기능이다. 같은 기능으로 Gitlab의 MR(Merge Request) 기능 등이 있다.

 

 

Github의 다양한 기능들

Git 자체는 코드의 버전 관리를 위한 시스템이지만 Github은 Git 위에 CI/CD를 강화하기 위해 Git Action 과 같은 자동 빌드 및 배포 기능, 프로젝트 매니징을 위한 칸반 보드 기능 등을 넣었다. 따라서 Github은 Git을 서비스하지만 추가적인 여러 기능들을 지원하는 시스템이라 보는 것이 맞다. 따라서 Github은 Git을 포함하는 클라우스 서비스라 할 수 있다.

반응형

 

이 글의 저작권은 '조세영의 Kotlin World' 에 있습니다. 글, 이미지 무단 재배포 및 변경을 금지합니다.

 

 

Kotlin, Android, Spring 사용자 오픈 카톡

오셔서 궁금한 점을 질문해보세요!
비밀번호 : kotlin22

open.kakao.com