[포스팅큐레이션, 개발이야기#059] 버전관리 야이기 - Github vs Gitlab

in #kr7 days ago (edited)

image.png

안녕하세요 가야태자 @talkit 입니다.

우선 git 클라우드의 양대 산맥을 보면 github와 gitlab이라는 회사가 존재 합니다.

제가 알고 있는 상식은

우선 github는 유료플랜 외에는 공개소프트웨어만 된다. 라는 이야기였는데 요즘은 아닌 것 같습니다. ^^

github, gitlab 모두다 공개/비공개 저장소를 모두 제공하고 있습니다.

제 주변에 기업에서 사용하시는 것을 보면 대기업에서는 github 유료플랜을 많이 사용하시구요.

gitlab은 중소기업에서 많이 사용하시는 것 같습니다. ^^

이건 순전히 제 주변인들의 야이기 입니다.

그리고, 최근에 또 모 카드사 프로젝트에서는 Bitbucket | Git solution for teams using Jira 이야기도 사용을 하고 있었습니다. ^^

저희 회사는 gitlab을 무료 플랜으로 훌륭하게 사용하고 있습니다.

제가 gitab에 저장소를 만들고, 해당 저장소를 프로젝트에 참여하는 다른 분들은 참여 시켜서 같이 공유하고 리뷰하는 형태로 사용하고 있습니다.

이번에 제가 하려고 하는 서브 프로젝트에 github를 사용할지 gitlab을 사용할지를 고민 중입니다.

그래서 chatGPT에게 좀 물어 봤습니다. ^^

GitHubGitLab은 Git 기반의 소스 코드 저장소 및 협업 도구입니다. 두 플랫폼 모두 코드 버전 관리, 팀 협업, CI/CD 기능 등을 제공하지만, 목적과 기능, 가격 정책에서 차이가 있습니다. 아래에서 GitHub와 GitLab을 비교해 보겠습니다.


1. 기본 개요

항목GitHubGitLab
출시2008년2011년
소유Microsoft 소유GitLab Inc. 소유
설치 방식주로 클라우드 기반클라우드와 자체 호스팅(Self-Managed) 지원
주요 고객오픈소스 커뮤니티와 소프트웨어 개발자기업과 엔터프라이즈

2. 주요 기능 비교

기능GitHubGitLab
코드 관리풍부한 Git 도구와 간단한 UIGit 도구 제공, 고급 UI 및 설정 가능
CI/CD 지원GitHub Actions으로 CI/CD 지원, 추가 설정 필요내장 CI/CD 파이프라인 제공, 초기 설정 간단
이슈 및 프로젝트 관리이슈 트래커 및 프로젝트 보드 제공이슈 보드, 에픽(계층적 이슈 관리), 마일스톤 지원
Wiki프로젝트별 Wiki 제공프로젝트별 Wiki 제공
코드 리뷰 및 병합Pull Request(Pull/Merge Request)와 코드 리뷰 기능Merge Request와 더불어 강력한 병합 전략
보안 도구Dependabot으로 의존성 관리 및 보안 취약점 알림내장된 SAST/DAST 및 보안 취약점 스캐너 제공
배포 자동화GitHub Actions 또는 서드파티 도구 사용CI/CD와 함께 Kubernetes 및 클라우드에 손쉬운 배포

3. 호스팅 및 배포

항목GitHubGitLab
클라우드 호스팅제공 https://github.com제공 https://gitlab.com
자체 호스팅유료로 지원함무료도 있음, 자체 호스팅(Self-Managed) 강력 지원
온프레미스 지원제한적온프레미스 배포를 위한 설치 가능

4. 오픈소스 및 커뮤니티

항목GitHubGitLab
오픈소스 지원주로 오픈소스 프로젝트 호스팅에 사용자체 소스 코드도 오픈소스(License: MIT)
커뮤니티세계 최대 오픈소스 커뮤니티기업 환경에 특화된 도구와 커뮤니티
프로젝트 탐색풍부한 오픈소스 프로젝트 발견 가능공개 프로젝트는 상대적으로 적음

5. 사용성

항목GitHubGitLab
UI/UX직관적이고 간단한 UI더 많은 설정 옵션을 제공하는 UI
초보자 친화도사용이 간편, 빠르게 학습 가능더 많은 설정 옵션으로 약간 복잡할 수 있음

6. 가격 비교

항목GitHubGitLab
무료 플랜대부분의 기능 제공, 무제한 퍼블릭/프라이빗 리포지토리 지원무료 플랜에서 자체 호스팅과 CI/CD 포함
유료 플랜사용자 당 월 $4(Team), $21(Enterprise)사용자 당 월 $19(Premium), $99(Ultimate)
엔터프라이즈 기능엔터프라이즈 플랜에서 고급 기능 제공고급 보안, DevOps, SAST/DAST 포함

7. CI/CD 기능

  • GitHub: GitHub Actions를 통해 강력한 CI/CD 기능을 지원하며, YML 파일로 워크플로를 정의.
  • GitLab: CI/CD가 내장되어 있으며, 간단한 .gitlab-ci.yml 파일로 자동화 파이프라인 설정.

8. 보안 및 DevOps

  • GitHub: Dependabot으로 보안 취약점을 자동으로 관리.
  • GitLab: SAST/DAST, 컨테이너 스캐닝, 보안 대시보드 등 엔터프라이즈 수준의 보안 제공.

선택 기준

GitHub가 적합한 경우GitLab이 적합한 경우
오픈소스 프로젝트에 중점을 둔 경우엔터프라이즈 수준의 자체 호스팅 및 CI/CD가 필요한 경우
간단한 UI와 빠른 시작을 원하는 경우DevOps 파이프라인과 보안 기능이 필요한 경우
대규모 커뮤니티와 협업이 중요한 경우기업 환경에서 내부 프로젝트 관리가 중요한 경우

GitHub와 GitLab은 목적에 따라 선택이 달라질 수 있습니다.

  • 오픈소스 프로젝트 → GitHub
  • 기업 내부 프로젝트 → GitLab

내 생각

위와 같이 예쁘게 잘 설명해주고 있습니다.

제가 빠뜨린 부분이 있네요.

github는 설치형 프로그램이 없습니다.

이 말이 사실인지 봤는데 아니네요. 유료로 돈을 내야 하지만,

GitHub Enterprise Server 정보 - GitHub Enterprise Server 3.11 Docs

위 문서를 봤을 때 사실이 아니었습니다. T.T

하지만, 유료네요.

하지만, gitlab는 무료 플랜도 있습니다. ^^

하지만, github를 클라우드 버전으로 사용해볼 생각입니다. ^^

gitlab을 주로 사용하였었는데

새로운 도전이 되겠네요 ^^

감사합니다.



Posted through the ECblog app (https://blog.etain.club)

Sort:  

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.