Git Lab(깃랩) / Git Hub(깃허브) 차이

  • 두가지 모두 소스코드 저장소 호스팅 플랫폼이며, 기술적 기반을 깃(Git)으로 삼는다는 점에서 비슷하다.
  • 기본 기능은 같지만, 서비스의 초점이 조금 다른곳에 맞추어져 있다.

1. DevOps(데브옵스)

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

깃랩은 지속적 통합(CI)/지속적 배포(CD)와 데브옵스 워크플로우를 내장하고 있다.

반면, 깃허브는 사용작 원하는 CI/CD도구를 직접 통합해야한다.

  • 즉 깃랩은 젠킨스와 아르고와 같은 CI/CD 도구들을 사용하지 않아도 자체적으로 파이프라인을 구성하여 간단하고 빠른 배포가 가능하다. 하지만 우리는 깃랩은 사용하지만, 깃랩CI/CD는 사용하고 있지 않은 상태이다.

2. 브랜치의 병합과 분리

깃허브에서는 브랜치 전략이라는 말이 있을만큼 새 브랜칭와 마스터 브랜치와의 병합이 용이하다.

  • 그덕에 신속한 배포가 가능하고, 문제 발생시 이전 버전으로 신속하게 복원할 수 있다.

깃랩의 워크플로우는 변경한 각 세트를 마스터 브랜치와 별도의 안정적인 브랜치로 생성한다.

  • 프로덕션과 스테이징의 분기가 최소한으로 있으며, 이러한 여러 다중 분기 접근방식은 여러단계의 테스트로 안정적인 유지가 가능하게 한다. 한편 이러한 이유로 병합및 수정시 코드 검토가 까다로워진다.