Gitlab과 Bitbucket 비교
DevOps 플랫폼은 막대한 노력을 자동화할 수 있으며 소프트웨어 개발의 수익성에 없어서는 안 될 보너스가 될 수 있습니다. 이 기사에서는 DevOps 플랫폼 Gitlab과 Bitbacket을 비교한 다음 권장 사항을 제시합니다.
Webrunners 팀으로서 우리는 두 플랫폼 모두에 대한 경험을 얻었고 이를 여러분과 공유하고 싶습니다. 물론 SaaS 및 자체 호스팅 변형도 평가됩니다. 물론 경험과 개인적인 기준은 각 회사 프로세스에 따라 다를 수 있으므로 다음 결과는 개인적인 경험만을 반영합니다.
우리의 기준 및 비교
- 사용성/사용자 경험
- 타사 시스템에 통합
- 가격 및 라이선스 모델
- 보안 / 가용성
- 지속적 통합/지속적 배포
- 개발자 경험 및 만족도(GIT, 리뷰, 병합 요청)
- 진보
유용성 및 사용자 경험
Gitlab: 사용성/UX
이러한 대규모의 경우 Gitlab은 로딩 시간이 빠른 좋은 플랫폼이지만 규모와 유용성이 충돌합니다. 특히 처음에는 수많은 설정 옵션에 대한 개요를 파악하기가 어렵습니다. 기술에 정통하지 않은 사용자의 경우 설정이 약간 신경이 쓰일 수 있습니다. 그러나 Gitlab은 일반적으로 약간의 교육을 받은 후 사용할 수 있어야 하는 교육을 받은 DevOps 및 개발자를 위한 것입니다.
평점: ★★★★☆
Bitbucket: 사용성 / UX
Bitbucket의 사용자 인터페이스는 매우 간단하고 대부분 이해하기 쉽습니다. 그러나 일반적인 사용성은 탐색이 매우 느리고 느리기 때문에 다소 열악합니다. 이는 작업 시간뿐만 아니라 많은 신경이 필요합니다.
평점: ★★★☆☆
다른 소프트웨어 및 플랫폼에 통합
Gitlab: 통합 옵션
Gitlab의 통합 옵션은 매우 다양하며 모든 표준 요구 사항을 충족합니다. Webhook, Slack, HipChat 등을 통한 사용자 알림을 위한 다양한 옵션이 특히 주목됩니다. Gitlab은 예를 들어 Bitbucket 또는 Github의 리포지토리 미러링도 제공합니다. 또한 다른 프로젝트 관리 플랫폼과 작업/티켓 동기화가 지원됩니다. 이러한 프로젝트 관리 플랫폼 중 하나는 작업, 의견 및 병합 요청/풀 요청이 지속적으로 동기화되는 JIRA입니다.
평점: ★★★★★
Bitbucket: 통합 옵션
Gitlab과 마찬가지로 Bitbucket에도 광범위한 통합 옵션이 있으며 표준 요구 사항도 포함합니다. 우리가 가장 좋아하는 통합은 JIRA에 비해 간소화된 칸반 보드 티켓 시스템을 제공하는 trello 보드입니다.
평점: ★★★★★
비용 및 라이선스 모델
Gitlab: 가격 책정
Gitlab은 모든 주요 기능을 무료로 자체 호스팅할 수 있습니다. 그러나 SaaS 버전은 이러한 모든 주요 기능을 무료로 제공한다는 점을 명심해야 합니다. 자체 호스팅 옵션은 일반적으로 서버 비용을 직접 부담하기 때문에 더 비쌉니다. 그러나 자신의 개발이 다른 서버에 있기를 원하는지 여부를 고려해야 합니다.
작은 추가 기능에 대한 “사용자당 / 월간” 가격 모델은 빠르게 불균형적으로 비싸집니다. Gitlab은 여기에서 추가 변형에 대해 더 나은 가격 모델을 평가할 수 있었습니다. 그러나 우리는 이미 무료 기본 기능에 너무 만족하여 다른 변형이 실제로 우리와 관련이 없습니다.
평점: ★★★★☆
무료로 (사용자당 $0/월):
- 소스 그래프의 지속적인 통합/지속적인 배포/티켓 보드/코드 인텔리전스와 같은 모든 주요 기능을 포함합니다(자체 호스팅 가능 – gitlab-ce).
- 지속적인 통합/지속적인 배포를 위해 그룹에는 매월 2000분이 허용됩니다. 플랫폼이 자체 호스팅되는 경우 모든 기간을 사용할 수 있습니다.
청동 (사용자당 $4/월):
- 추가 자동화 기능
은 (사용자당 $19/월):
- 애플리케이션 확장성을 위한 추가 기능
- 최적화, 우선 순위 지정 및 보안을 위한 추가 기능
금 (사용자당 $99/월):
- 최적화, 우선 순위 지정 및 보안을 위한 추가 기능
Bitbucket: 가격
Bitbucket은 또한 많은 취미 개발자 또는 개인 프로젝트에 충분할 수 있는 스타터 변형으로 무료 버전을 제공합니다. 기업의 경우 무료 버전은 너무 제한적이므로 선택 사항이 아닙니다.
가격 변형은 기능보다 제한 사항에서 더 많이 다릅니다.
평점: ★★★★☆
무료로 (무료/무제한):
- 주요 기능
- 사용자 5명
- 지속적인 통합/지속적인 배포의 경우 매월 50분
기본 (사용자당 $3/월):
- 주요 기능
- 무제한 사용자
- 매월 지속적 통합/지속적 배포에 2500분 사용 가능
프리미엄 (사용자당 $6/월):
- 주요 기능 및 고급 기능
- 무제한 사용자
- 매월 지속적 통합/지속적 배포에 3500분 사용 가능.
- 고급 기능은 배포 권한, IP 화이트리스트 및 스마트 미러링입니다.
보안 / 가용성
Gitlab: 보안/가용성
Gitlab의 SaaS 버전은 기본적으로 AWS에서 호스팅되며 가용성이 좋습니다. 때로는 액세스 시간이 지연되는 경우도 있습니다. 드물게 서버 오류가 발생할 수도 있습니다. 이것은 Gitlab의 시작으로 거슬러 올라갈 수 있습니다. Gitlab은 초기에 Ruby-on-rails로 작성된 자체 호스팅 오픈 소스 프로젝트였습니다. 그러나 해석된 추상 언어로서의 Ruby의 초점은 성능에 덜 있습니다. Go 1.9의 수정으로 Gitaly 서비스 속도가 30배 빨라진 방법 문서에서 볼 수 있듯이 개발자는 지속적으로 최적화 작업을 수행하고 연구 결과를 게시하고 있습니다.
또는 자체 서버에서 Gitlab을 호스팅하여 서버 오류를 방지하거나 자체 시스템에서 프로젝트 정보를 유지할 수 있습니다. 물론 이 대안은 플랫폼을 직접 유지 관리하고 모니터링해야 한다는 단점이 있습니다.
평점: ★★★★☆
Bitbucket: 보안/가용성
Gitlab과 마찬가지로 Bitbucket도 SaaS 구현의 기술적 문제와 싸워야 합니다. 드물게 서버 오류가 발생합니다. Bitbucket을 직접 호스팅할 수도 있지만 SaaS 사용과 동일한 가격이 적용됩니다.
SaaS 인스턴스는 매우 느리고 사용 중인 응답 시간이 깁니다. 아직 Bitbucket을 직접 호스팅하지는 않았지만 성능과 로딩 시간이 개선되어야 한다고 가정합니다.
평점: ★★★★☆
지속적인 통합/지속적인 배포
지트랩: CI/CD
Gitlab은 무료 SaaS와 자체 호스팅 옵션 모두에서 훌륭하게 작동하는 매우 광범위한 CI/CD 개념을 가지고 있습니다. 자체 호스팅 옵션을 사용하려면 CI 프로세스를 실행하기 위해 실행 중인 Gitlab Ci-Runner 인스턴스가 필요합니다. 이를 위해 애플리케이션의 나머지 부분과 마찬가지로 공식 Docker 이미지를 사용할 수 있습니다.
CI/CD 구성은 중앙 gitlab.yml 파일을 통해 수행되며 다양한 프로세스를 자동화할 수 있는 가능성을 제공합니다. 예를 들어 여러 프로세스를 병렬로 실행하고 예를 들어 Docker 인스턴스를 시작할 수 있습니다. 커뮤니티에서 지속적으로 확장되고 있는 Gitlab의 CI/CD에는 다양한 기능이 있습니다.
평점: ★★★★★
비트버킷: CI/ CD
Bitbucket의 CI 시스템도 컨테이너에서 실행할 수 있는 개별 프로세스를 기반으로 합니다. 프로세스의 사용자 지정이 제한되고 파일 변경 사항의 자동 게시, 다양한 컨텍스트(자체 환경 변수 포함) 및 자체 정의 작업과 같이 원하는 많은 기능이 누락되었습니다. 그럼에도 불구하고 우리는 때때로 프로세스가 중단된 다음 2시간 후에야 종료된다는 사실을 발견했습니다. 짜증나는건 이 버그 때문에 할당시간에서 120분을 뺀다.
평점: ★★★☆☆
개발자 경험 및 만족도
Gitlab: 경험과 만족
우리 개발자들은 플랫폼(SaaS)을 사용할 수 없는 경우에도 Gitlab과 함께 작업하는 것을 좋아하며 이로 인해 개발 중에 스트레스를 받는 순간이 발생합니다. 모든 직원은 고객 및 내부 프로젝트 모두에 매표소를 사용하는 것을 좋아합니다.
또한 개발자는 Gitlab의 주요 기능에 만족하며 업그레이드할 필요가 없습니다. 특히 코드 리뷰와 병합 요청은 작업하기가 매우 즐겁습니다.
평점: ★★★★☆
Bitbucket: 경험과 만족
Bitbucket으로 작업하면 생산적일 수 있지만 자동화할 수 없는 프로세스로 제한됩니다. 불행히도 SaaS 버전의 긴 응답 시간으로 인해 개발자는 좌절하고 불만족했습니다. 전반적으로 리뷰와 MR/PR은 좋은 프리젠테이션을 가지고 있지만 주요 코드 변경으로 인해 프로세스가 매우 느려지고 최악의 경우 브라우저가 정지됩니다. 그럼에도 불구하고 우리는 Bitbucket으로 일부 성공적인 프로젝트를 완료할 수 있었습니다.
평점: ★★★☆☆
DevOps 플랫폼의 추가 개발
Gitlab: 향후 추가 개발
Gitlab의 추가 개발 범위는 엄청나므로 지속적으로 새로운 기능을 제공합니다. 프로젝트의 로드맵과 다음 릴리스는 투명하며 커뮤니티와 함께 개발될 것입니다. 다음은 출시 예정 목록입니다.
평점: ★★★★★
Bitbucket: 향후 추가 개발
Bitbucket의 개발은 Gitlab에 비해 느립니다. 새로운 기능에 대한 요청은 거의 해결되지 않으며 버그는 일반적으로 그렇게 빨리 수정되지 않습니다. 새로운 기능은 거의 출시되지 않습니다. 즉, Bitbucket은 더 이상 미래 제품으로 선택할 수 없습니다.
평점: ★★☆☆☆
결론 Gitlab과 Bitbucket 비교
깃랩
- ★★★★☆ 사용성 / UX
- ★★★★★ 통합
- ★★★★☆ 상
- ★★★★☆ 보안 / 가용성
- ★★★★★ CI/CD
- ★★★★☆ 개발자 경험 및 만족도(GIT, 리뷰, MR)
- ★★★★★ 발전
합계: ★★★★☆
비트버킷
- ★★★☆☆ 사용성 / UX
- ★★★★★ 통합
- ★★★★☆ 상
- ★★★★☆ 보안 / 가용성
- ★★★☆☆CI/CD
- ★★★☆☆ 개발자 경험 및 만족도(GIT, 리뷰, MR)
- ★★☆☆☆ 발전
합계: ★★★☆☆
두 SaaS 버전 모두 좌절로 이어질 수 있는 기술적 확장성 문제가 있습니다. Bitbucket은 매우 간단한 개발 프로세스에 적합한 간소화된 DevOps 플랫폼입니다. Gitlab은 큰 제한이 없는 타의 추종을 불허하는 무료 버전을 보유하고 있으며 중소 기업에서도 사용할 수 있습니다. Gitlab 및 Bitbucket을 사용하면 회사가 자체 인스턴스를 유지할 수 있는 경우 자체 호스팅 버전이 확실히 더 나은 솔루션입니다.
우리의 개인적인 권장 사항은 Gitlab(gitlab-ce)의 자체 호스팅 커뮤니티 버전을 사용하는 것입니다. 특히 Gitlab이 모든 기업이 공동으로 개발에 참여하고 혜택을 받을 수 있는 투명한 오픈 소스 프로젝트라는 점이 마음에 듭니다.