본문 바로가기
카테고리 없음

GitLab(깃랩)과 GitHub(깃허브)의 차이점

by hhenyy 2024. 3. 8.

GitLab(깃랩)과 GitHub(깃허브)의 차이점

소스코드 저장소 호스팅의 양대산맥인 깃허브와 깃랩은 그 기술적 기반을 '깃(Git)'으로 삼는다는 점에서 큰 차이를 보이지 않습니다. 기본 기능은 같지만 서비스를 만든 철학과 초점에 차이를 갖기 때문에, 사용자는 목적과 업무 체계를 고려해 적합한 서비스를 골라야 합니다.

 

지난 시간에 vcs(버전관리시스템)인 svn과 git 의 차이점도 확인했는데요! 궁금하신 분들은 이 포스팅을 읽고 와주세요

2023.01.16 - [개발자 세릴리/비전공자 한 입 지식] - [지식] VCS란? Git과 SVN의 차이점을 알아보자!

 

[지식] VCS란? Git과 SVN의 차이점을 알아보자!

VCS란? Git과 SVN의 차이점을 알아보자! VCS 는 Version Control System의 약자로, 파일의 변화를 추적하고 관리하는 시스템이자 개발자들이 많이 사용하는 도구입니다. 그렇다면 왜 VCS를 써야할까요? 만약

serylee.tistory.com

 

깃허브로고(왼쪽)와 깃랩로고(오른쪽)

 

깃허브와 깃랩의 핵심 차이점 '데브옵스'

깃허브와 깃랩의 가장 큰 차이점은 데브옵스 요소에 있습니다.

깃랩은 지속적 통합/지속적 전달(CI/CD)와 데브옵스 워크플로우를 내장했습니다. 여기서 CI/CD는 개발 환경, 테스트 환경을 매번 내 로컬에 맞게 설정해야하는 것을 배포(지속적인 서비스 제공) 후에는 누가 어디서 접속을 하더라도 같은 환경을 계속 유지해주는 것이라고 이해하면 되겠습니다. CI/CD 는 다음번에 좀 더 다뤄볼게요!

 

반면, 깃허브를 사용하면 사용자가 원하는 CI/CD 도구를 직접 통합해야 합니다. 깃허브 사용자는 보통 젠킨스, CircleCI, TravisCI 같은 써드파티 프로그램을 사용합니다.(이 프로그램들이 CI/CD를 가능하게 합니다)

또 다른 차이점은 깃허브가 속도를 우선시 한다면, 깃랩은 안정성에 중점을 둡니다.

 

브랜치, 병합이냐 분리냐

깃허브에서는 브랜치 전략이라는 것이 있을 정도로 브랜치(한국어로는 '가지'라는 뜻이죠)를 생성하고 합치는 것을 강조합니다.

따라서 깃허브는 새로운 브랜치를 마스터 브랜치와 병합하는 것이 용이합니다. 그 덕에 신속한 배포가 가능하고, 문제 발생 시 이전 버전으로 신속하게 복원할 수 있는 장점도 있죠.

 

반면 깃랩의 워크플로우는 변경한 각 세트를 마스터 브랜치와 별도의 안정적인 브랜치로 생성합니다. 프로덕션과 스테이징의 분기가 최소한으로 있고 이런 다중 분기 접근방식은 여러 단계의 테스트 프로세스를 필요로 합니다. 따라서 병합 요청 시 코드 검토가 까다로워집니다.

 

소프트웨어 서비스

두 서비스의 또 다른 차이점은 소프트웨어 서비스의 구성입니다.

깃랩은 완전한 소프트웨어 개발 솔루션을 제공하며, 올인원의 데브옵스 플랫폼이라고 강조합니다. 깃랩은 지라(Jira), 마이크로소프트 팀즈, 슬랙, G메일 같은 애프리케이션 및 플랫폼과 통합을 제공합니다.

 

반면 깃허브는 자체적으로 깃랩보다 적은 수의 소프트웨어 서비스를 제공합니다. 대신 외부 프로그램 및 서비스와 통합하는 쉬운 방법을 제공합니다. 깃허브 마켓플레이스에서 다양한 외부 서비스와 프로그램, 깃허브와 통합을 위한 소프트웨어를 이용할 수 있습니다.

 

기본 구성과 인터페이스는 유사

위와 같은 차이점이 많지만 깃허브와 깃랩은 여러모로 닮았습니다. 리눅스 서버에서 실행된다는 점, 이슈 트래커를 함께 제공한다는 점, 광범위한 타사 통합과 가져오기 도구를 제공한다는 점 등이 말이죠.

인터페이스도 비슷합니다. 고급 개발자를 위한 커맨드라인인터페이스(CLI)를 가졌고, 초급 개발자를 위한 웹 인터페이스도 제공합니다.

 

두 서비스 모두 오픈소스를 지원하지만, 저장소 자체는 혼합 프로그래밍 모델을 사용합니다.

기본적으로 깃허브와 깃랩 모두 오픈소스의 웹 기반 레파지토릴, 깃 기반 코드 관리, 원격 레파지토리를 통한 로컬 파일 변경 등을 제공합니다. 기본적인 깃 기능을 원하지만 깃을 계속 실행하는 것을 걱정하는 경우 두 서비스 모두 유용합니다.

 

가격

깃허브와 깃랩 모두 무료 요금제를 운영하고 있습니다. 무제한 용량의 퍼블릭 및 프라이빗 저장소를 함께 제공합니다. 

반면, 어느정도 규모 있는 회사의 소프트웨어 개발 조직이라면 유료 요금제를 이용하는 게 좋습니다.

깃랩의 유료 요금제는 프리미엄과 얼티메이트로 나뉘고 깃허브의 유료 요금제는 팀과 엔터프라이즈로 나뉩니다. 깃허브와 깃랩의 가격을 1대1로 비교하긴 어렵습니다. 각 플랫폼에서 워크플로우 작동 방식에 따라 가장 적합한 요금제를 골라야 합니다.

 

소스코드 관리 시스템으로 깃을 써야 하는 이유

VCS는 지리적으로 곳곳에 흩어진 개발자, 디자이너, 기타 팀 구성원과 프로젝트를 쉽게 꾸려갈 수 있습니다. 모든 구성원이 최신 코드에 접근 권한을 갖고 모든 수정 사항을 추적할 수 있습니다.

리눅스의 아버지인 리누스 토발즈는 자신의 또다른 작품인 깃을 위대한 발명품이라 자평합니다. 깃을 활용한 소통과 협업 방식은 매우 쉽습니다. 가장 큰 단점은 다루기 어렵다는 것일 뿐... 깃은 오픈소스이며 무료고, 빠릅니다. 그 어떤 버전관리 시스템보다 안정적이죠. 깃이 오늘날 버전관리시스템의 표준으로 자리잡은 이유입니다.

 

출처 : https://zdnet.co.kr/view/?no=20220804135812