Git 호스팅서비스

반응형

1. Github

(1) 특징

  • 2008년 개발된 최대 규모 오픈소스 DVCS(2018년 MS 인수)
  • Git, SVN, Mercurial(HG), TFS 지원
  • CI/CD (GitHub Actions)
  • Vue.js, Docker, Tensorflow, React 등 많은 라이브러리가 GitHub에서 배포/유지보수
  • https://github.com/

(2) 장점

  • git 저장소 호스팅 사이트중 가장 큰 규모의 서비스
  • 업로드 / 다운로드의 속도가 가장 빠름
  • private repo 무료 사용(협업자 제한없음)
  • 최근 무료서비스 정책으로 대부분의 기능 이용 가능
  • 가장 안정적인 서버 제공

(3) 단점

  • 오픈 소스의 본고장이라 그런지 무료 플랜의 경우 Repo를 무조건 공개해야 한다.
  • LFS는 트래픽 제한도 있다.

2. Gitlab

(1) 특징

  • 2013년 GitLab 사 개발
  • Git 지원
  • 개발 외 DevOps 환경 구축에 용이(이슈 추적, 테스트, CI/CD 파이프라인)
  • 3rd party 플러그인/툴 없이 자체 CI/CD
  • Kubernetes 기반 배포 및 모니터링
  • https://about.gitlab.com/

(2) 장점

  • 설치형 서버제공으로 자체 형상관리 서버운영가능 (오픈소스로 시스템 수정가능)

자체 데이터센터를 보유한 회사에서는 보안, 용량 등의 이유로 gitlab 설치형으로 운영할 수 있기에 이부분이 상당히 혜자스러운 옵션인 것 같다. private repo개념과 달리 admin 권한으로 다양한 설정을 할 수 있고 인터넷 속도 제한이나 소스코드 용량의 압박도 없다. 단, gitlab을 설치하고 관리할 수 있는 엔지니어가 사내에 있어야한다..

  • private repo 무료 사용(협업자 제한 없음)
  • Devops pipeline 구축에 최적화(GCP를 이용하여 K8S까지 배포가 용이함)

(3) 단점

  • push/pull의 속도가 느림
  • 가끔 불안정한 서버상태

3. Bitbucket

(1) 특징

  • Atlassian이 개발/제공한 DVCS로서 Jira와의 연동성이 좋음
  • Jenkins, CircleCI CI/CD 도구 제공
  • 코드 리뷰, 테스트, 분석 도구를 활용한 Pull Request 단계에서의 Code Insights 기능
  • 계정의 비공개 콘텐츠 clone, push 작업 시 2단계 인증(2FA) 절차
  • https://bitbucket.org/

(2) 장점

  • 아틀라시안의 서비스(jira)와 연동 편의성이 높다.
  • 직관적인 GUI 제공

(3) 단점

  • 저장소 참여하는 인원 기준으로 과금이 유발됨(5명 이상부터는 과금 부여)

4. Github, Gitlab, Bitbucket 비교

요인
Github
Gitlab
Bitbucket
Free Private Repositories
(무료 개인 저장소)
유료(사용자 당)
무료
무료(5명까지)
Free Public Repositories
(무료 공용 저장소)
무료
무료
무료
Large size file storage
(대용량 파일 저장소)
프로젝트별 1G
파일별 100M
리포지토리별 10G
리포지토리별 1G
Server Installation
(서버 설치)
유료
무료
유료
Merge Request or Issue templates
(병합 요청 또는 문제 템플릿)
사용자는 병합 요청을 요청하거나 템플릿을 발급할 수 있음
사용자는 병합 요청을 요청하거나 템플릿을 발급할 수 있음
기능 없음
Integrated CI
(통합 CI)
별도 플러그인 필요
기능 제공(유료)
JIRA, Trello 연계 가능
Open-Source
(오픈 소스)
오픈 소스가 아니며, 사용자는 이 플랫폼에서 제한된 자유 기능을 가지고 있다.
오픈 소스 플랫폼으로, 사용자는 비용을 지불하지 않고 모든 기능을 사용할 수 있다.
오픈 소스가 아님. 플랫폼은 일부 기능을 제공하지만, 완전한 플랫폼은 오픈 소스가 아니다.
Navigation Usability
(내비게이션 사용성)
기능 제공
기능 제공
기능 없음
Project analytics
(프로젝트 분석)
기능 없음
프로젝트 분석 차트와 번다운 차트를 볼 수 있습니다.
프로젝트 분석 차트와 번다운 차트를 볼 수 있습니다.
compatibility
(호환성)
Git, SVN, HG, TFS
GitHub, Bitbucket, Google Code, Fogbugz
Git, CodePlex, Google Code, HG, SourceForge, SVN
Stability
(안정성)
좋음
불안
무난
Performance
(속도)
빠름
느림
무난

반응형