https://stackshare.io/stackups/bitbucket-vs-github-vs-gitlab
๊น ๊ด๋ฆฌ๋ฅผ ์ํ ์ฃผ์ ์ธ ๊ฐ์ง ํด, Bitbucket, GitHub, GitLab.
์ธ ํด์ ๋น๊ตํด๋ณด๊ณ ์ ์ฐพ๋ ์ค ์ค๋ ๋ ์ง(2023.6.7)๋ก ์ ๋ฐ์ดํธ๋ ์ต์ ๊ธ์ ๋ฐ๊ฒฌํ๋ค.
ํด๋น ๊ธ์์ ์ธ ๊ฐ์ง ํด์ 1. Pull Request, 2. Integrations, 3. ์คํ ์์ค ํ๋ก์ ํธ ๊ฐ์, 4. ๊ฐ๊ฒฉ์ผ๋ก ๋น๊ตํ๊ณ ์๋ค.
๊ฐ๋ตํ๊ฒ ์ ๋ฆฌํ๋ค.
1. Pull Request ํ ๋ฆฌํ์คํธ
ํ ๋ฆฌํ์คํธ๋, production, development์ ๊ฐ์ ๋ฒ ์ด์ค ๋ธ๋์น์ ์์ฑ๋ feature ๋ธ๋์น๋ฅผ ๋จธ์งํ๋ ๊ฒ์ผ๋ก, ์ผ๋ฐ์ ์ผ๋ก z์ฝ๋ ๋ฆฌ๋ทฐ๊ฐ ์ ํ๋๋ค. ์ด ํ ๋ฆฌํ์คํธ๊ฐ ๊ฐ ํด๋ง๋ค ์ฐจ์ด์ ์ด ์กด์ฌํ๋ค.
GitHub์ Pull Request
ํ ๊ธฐ๋ฐteam-based์ ์ผ๋ํ๊ณ ๋ง๋ค์ด์ง ๊ธฐ๋ฅ๋ค์ด ์๋ค.
Bitbucket์ Pull Request
GitHub๋ณด๋ค๋ ์ ์ ๊ธฐ๋ฅ๋ค์ ์ ๊ณตํ๋ค.
GitLab์ Merge Request(๋ค๋ฅธ ํด๋ค์ Pull Request์ ๋น์ทํ๋ฐ, ์ด๋ฆ์ด ๋ค๋ฅด๋ค)
์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๊ธฐ๋ณธ์ผ๋ก ๋ณด์ฌ์ฃผ์ง๋ ์๋๋ค. ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ณด๊ธฐ ์ํด์๋ ํด๋ฆญ ๋ช ๋ฒ ํด์ผ ํ๋ค.
2. Intergrations ํตํฉ
CI, CD๋ฅผ ์ํ ๊ธฐ๋ฅ ์ ๊ณต
GitHub
GitHub Marketplace์ Works with Marketpalce์์ CI, CD๋ฅผ ์ํ ์๋ํํฐ ํด๋ค์ ๊ตฌ์ ํ ์ ์๋ค. REST API๋ก ์ปค์คํ ํตํฉ์ ์์ฑํ ์๋ ์๋ค.
Bitbucket
์์ฒด Pipeline ํด์ ์ ๊ณตํ๋ฉฐ, app marketplace์์ ์๋ํํฐ ํด๋ค์ ํ๋ํ ์ ์๋ค. API๋ ์ ๊ณตํด ์์ฒด ํตํฉ์ ์์ฑํ ์๋ ์๋ค.
GitLab
ํ๋ฌ๊ทธ์ธ ์์คํ ๊ณผ REST API๋ฅผ ์ ๊ณตํ๊ณ , ํ๋ซํผ ์์ ์์ฒด CI ํด์ด ์๋ค.
3. ์คํ ์์ค ํ๋ก์ ํธ ๊ฐ์์ฑ
GitHub
๊ฐ์์ฑ์ด ๊ฐ์ฅ ์ข๊ณ , ๊ฐ์ฅ ๋ง์ ๊ธฐ๋ฅ๋ค์ ์ ๊ณตํ๋ค.
GitLab
๊ธฐ๋ฅ์ ์ ๊ณตํ๊ธฐ๋ ํ๋ GitHub๋ณด๋ค๋ ๊ธฐ๋ฅ๋ค์ด ์ ๋ค.
Bitbucket
public repository ์์ฑ ์ต์ ์ด ์๊ธฐ๋ ํ์ง๋ง ๊ฒ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ง ์๋๋ค.
์ฝ๋๋ฅผ ์คํํ๊ณ ์ถ์ง ์๋ค๋ฉด self-hosted ๋ฒ์ ์ ์ฌ์ฉํ๋ฉด ๋๋ค.
4. ๊ฐ๊ฒฉ
Cloud-host์ Self-host ๊ฐ๊ฒฉ์ ์ฐจ์ด๋ฅผ ์ ๋งํฌ์์ ์ ์ค๋ช ํ๋ค.
ํ ์ด ํ๋ก์ ํธ์ฉ์ผ๋ก ๊ฐ์ฅ ์ ๋ ดํ GitLab์ด ์ ๋นํด ๋ณด์ด๊ธฐ๋ ํ๋ค.