Bitbucket adalah platform Git dari perusahaan Atlassian, terintegrasi dengan Jira, Confluence dan alat ekosistem lainnya. Bitbucket menyediakan hosting repositori Git, CI/CD bawaan melalui Bitbucket Pipelines dan alat yang kuat untuk peninjauan kode. Menurut data Atlassian, 2024, Bitbucket digunakan oleh lebih dari 10 juta pengembang dan 800.000 tim di seluruh dunia.
Poin utama
Bitbucket adalah platform web untuk hosting repositori Git, dikembangkan oleh perusahaan Atlassian. Awalnya Bitbucket hanya mendukung Mercurial (sejak 2008), tetapi setelah penghentian dukungan Mercurial pada tahun 2020, platform ini sepenuhnya beralih ke Git. Platform ini tersedia dalam dua edisi: Bitbucket Cloud (SaaS, hosting Atlassian) dan Bitbucket Data Center (versi lokal untuk Enterprise).
Keunggulan utama Bitbucket dibandingkan pesaing — integrasi mendalam dengan produk Atlassian. Jira secara otomatis menghubungkan commit dan Pull Request ke tugas, Confluence memungkinkan penyisipan potongan kode ke dalam dokumentasi, dan Opsgenie menghubungkan deployment dengan insiden. Untuk tim yang sudah menggunakan ekosistem Atlassian, Bitbucket adalah pilihan alami karena tidak memerlukan konfigurasi integrasi tambahan.
Bitbucket Cloud menawarkan beberapa tingkat hosting. Paket gratis mencakup satu pengguna dan penyimpanan terbatas (1 GB). Paket standar — $3 per pengguna per bulan dengan repositori privat tak terbatas dan 2500 menit Pipelines per bulan. Bitbucket menggunakan model lisensi pengguna: setiap pengguna yang memiliki akses ke repositori, termasuk hanya baca, dikenakan biaya.
Bitbucket Pipelines adalah sistem CI/CD bawaan yang bekerja di atas kontainer Docker. Pipelines terintegrasi langsung ke Bitbucket Cloud dan tidak memerlukan instalasi runner terpisah atau konfigurasi webhook. Konfigurasi dijelaskan dalam file bitbucket-pipelines.yml yang terletak di root repositori. Setiap pipeline terdiri dari langkah-langkah (steps) yang digabungkan dalam urutan.
Pipelines mendukung langkah paralel, eksekusi manual, pemicu push dan jadwal, caching dependensi dan artefak. Setiap langkah dijalankan dalam kontainer Docker terisolasi yang gambarnya ditentukan dalam konfigurasi. Di bawah ini adalah contoh pipeline untuk membangun aplikasi Android dengan pengujian dan publikasi ke Firebase App Distribution:
# bitbucket-pipelines.yml
image: openjdk:17-jdk
pipelines:
pull-requests:
'**':
- step:
name: Build and Test
caches:
- gradle
script:
- ./gradlew assembleDebug testDebugUnitTest
artifacts:
- app/build/outputs/apk/debug/
branches:
main:
- step:
name: Deploy to Firebase
script:
- pipe: atlassian/firebase-distribution:1.0.0
variables:
APP_FILE: 'app/build/outputs/apk/debug/app-debug.apk'
Bitbucket Pipelines memiliki batasan 50 menit per pipeline untuk versi Cloud, yang cukup untuk sebagian besar proyek, tetapi dapat menjadi hambatan untuk monorepositori besar. Di Data Center batasan ini dihilangkan sepenuhnya — durasi pipeline hanya ditentukan oleh sumber daya server yang tersedia. Pipelines juga mendukung gambar Docker kustom, memungkinkan penggunaan alat build dan pengujian apa pun.
Pull Request di Bitbucket diimplementasikan dengan penekanan pada proses peninjauan kode perusahaan. Bitbucket menawarkan: komentar inline ke baris diff tertentu, pemeriksaan wajib (checks) dari Pipelines atau layanan eksternal, jumlah minimal persetujuan untuk penggabungan, pemblokiran merge hingga semua pemeriksaan lulus, dan deklarasi konflik kepentingan (decline). Antarmuka PR dibagi menjadi tiga kolom: kode sumber, diff, dan struktur file.
Fitur unik Bitbucket — Code Insights. Ini adalah API untuk integrasi alat kualitas kode eksternal (SonarQube, CodeScene, ESLint, Detekt) yang menampilkan hasilnya langsung di antarmuka Pull Request. Pengembang melihat: jumlah bug baru, cakupan pengujian, code smells, dan duplikasi. Code Insights memungkinkan pengambilan keputusan tentang merge berdasarkan metrik objektif, bukan hanya pendapat subjektif peninjau.
Bitbucket juga mendukung batasan cabang (branch permissions): dapat melarang penghapusan cabang, mewajibkan pembuatan PR untuk cabang tertentu, membatasi daftar pengguna yang memiliki hak merge ke main. Selain itu ada pemeriksaan merge (merge checks) — daftar kondisi wajib (Pipelines lulus, minimal N persetujuan, tidak ada komentar terbuka) yang harus dipenuhi sebelum tombol Merge. Pengaturan melindungi cabang produksi dari perubahan tidak terverifikasi yang tidak disengaja.
Integrasi Bitbucket dengan Jira — keunggulan utama platform. Ketika pengembang menyertakan kunci tugas dalam pesan commit (misalnya, PROJ-123), Jira secara otomatis menghubungkan commit ini ke tugas. Di antarmuka tugas, tab Development ditampilkan, di mana semua commit, Pull Request, cabang, dan deployment yang terkait dengan tugas ini dikumpulkan. PR secara otomatis memperbarui status tugas di Jira saat penggabungan (transisi ke Done).
Confluence juga terintegrasi dengan Bitbucket: potongan kode langsung dari repositori dapat disisipkan ke halaman Confluence melalui makro Code Block. Perubahan dalam kode secara otomatis disinkronkan dengan Confluence, yang nyaman untuk pemeliharaan dokumentasi arsitektur. Selain itu Atlassian menyediakan Smart Commits — manajemen tugas Jira langsung dari pesan commit: perubahan status, penambahan waktu dan prioritas.
Untuk otomatisasi DevOps Bitbucket mendukung Deployment Gate — pengikatan deployment ke versi tugas. Ketika pipeline mencapai tahap deployment, Jira memeriksa apakah semua tugas dalam rilis ini memiliki status Approved. Jika tidak — deployment diblokir. Ini mengimplementasikan prinsip Continuous Delivery dengan kontrol kualitas di tingkat tugas, bukan hanya kode.
Bitbucket memungkinkan pembuatan template repositori untuk standarisasi struktur proyek. Untuk proyek mobile dapat dibuat template dengan file yang sudah diinstal: konfigurasi Gradle, gitignore, pengaturan Detekt dan Ktlint, pipeline untuk CI Android dan README dengan instruksi build. Proyek baru dibuat dari template dalam beberapa klik, yang mempercepat orientasi pengembang baru.
Perbandingan Bitbucket dengan GitHub dan GitLab tergantung pada ekosistem tempat tim bekerja. Bitbucket kalah dari GitHub dalam ukuran komunitas (10 juta vs 100 juta pengguna), tetapi unggul dalam integrasi perusahaan berkat tumpukan Atlassian. Jika tim sudah menggunakan Jira untuk manajemen tugas dan Confluence untuk dokumentasi — Bitbucket memberikan integrasi mulus tanpa konfigurasi tambahan.
Dalam hal CI/CD Bitbucket Pipelines kalah dari GitLab CI/CD dalam skenario lanjutan (tidak ada child pipelines, build matriks, pipeline bertingkat) dan GitHub Actions dalam jumlah tindakan siap pakai (Marketplace Actions berisi 20.000+ langkah vs ribuan pipe publik di Bitbucket). Namun, Pipelines lebih sederhana dalam konfigurasi untuk skenario tipikal berkat komponen pipe siap pakai dari Atlassian.
| Kriteria | Bitbucket | GitHub | GitLab |
|---|---|---|---|
| CI/CD | Pipelines, 50 mnt/langkah | Actions, 2000 mnt/bln | CI/CD, tanpa batas (Self) |
| Integrasi | Jira, Confluence | Copilot, Slack, Azure | Kubernetes, Prometheus |
| Self-Hosted | Data Center (berbayar) | Enterprise Server | CE (gratis) |
| Pengguna | ~10 jt | ~100 jt | ~30 jt |
| Lisensi | Proprieter | Proprieter | MIT (kode terbuka) |
Pemilihan Bitbucket dibenarkan dalam dua skenario: tim sudah menggunakan ekosistem Atlassian (Jira + Confluence + Opsgenie) atau pekerjaan dilakukan di lingkungan perusahaan di mana Bitbucket Data Centre sudah diterapkan sebagai alat standar. Untuk startup dan proyek open-source, GitHub menawarkan komunitas yang lebih kaya dan fitur gratis, sedangkan GitLab — CI/CD self-hosted terbaik.
Bitbucket Data Center adalah versi perusahaan dari platform, dirancang untuk instalasi di infrastruktur sendiri. Berbeda dengan versi Cloud, Data Center menawarkan: klasterisasi (mode aktif-aktif untuk beberapa node), Smart Mirroring (cermin terdistribusi geografis untuk mempercepat clone/fetch), ketersediaan tinggi (99,99% uptime dengan klasterisasi) dan audit penuh tindakan.
Data Center mencakup semua fitur versi Cloud, tetapi dengan ekstensi perusahaan. Smart Mirroring secara otomatis menyinkronkan repositori antar server di pusat data berbeda — pengembang dari Eropa dan Asia mendapatkan kecepatan clone/fetch yang sama, karena operasi Git dilakukan melalui cermin terdekat. Log audit menyimpan setiap tindakan: siapa, kapan dan dari IP mana membuat cabang, melakukan push, menggabungkan PR.
Lisensi Bitbucket Data Center berdasarkan jumlah pengguna (bukan repositori). Lisensi minimum untuk 50 pengguna dengan harga mulai dari $1520 per tahun (paket standar). Data Center wajib bagi organisasi di mana: SLA untuk ketersediaan diperlukan, data tidak dapat meninggalkan negara (GDPR, 152-FZ), jumlah pengembang melebihi 500 orang atau integrasi dengan sistem LDAP/SAML perusahaan diperlukan.
Bitbucket Snippets — alat untuk menyimpan dan berbagi potongan kode kecil. Berbeda dengan repositori, Snippets tidak memiliki riwayat Git lengkap, tetapi mendukung versioning, komentar, dan fork. Snippets berguna untuk konfigurasi bersama (docker-compose.yml untuk pengembangan lokal), skrip SQL migrasi, dan contoh kode yang tidak memerlukan repositori lengkap. Setiap Snippet memiliki URL unik dan dapat dikaitkan dengan proyek di Jira.
Bitbucket REST API 2.0 memungkinkan pengelolaan repositori, Pull Request, cabang, dan izin secara terprogram. API digunakan untuk otomatisasi alur kerja: pembuatan repositori dari template, pembaruan izin massal, pengambilan statistik Pull Request, dan integrasi dengan sistem CI eksternal. Batas kecepatan adalah 1000 permintaan per jam untuk pengguna yang terautentikasi. API mendukung Pagination melalui parameter Page dan Pagelen untuk bekerja dengan kumpulan data besar.
Pertanyaan yang sering diajukan
Bitbucket adalah platform Atlassian untuk menyimpan kode Git dengan CI/CD, peninjauan kode, dan integrasi bawaan dengan Jira. Digunakan oleh tim yang sudah bekerja di ekosistem Atlassian.
Pipelines menggunakan komponen pipe (langkah siap pakai dari Atlassian), lebih sederhana untuk tugas tipikal. GitHub Actions menawarkan Marketplace yang lebih luas dan build matriks yang fleksibel, tetapi membutuhkan lebih banyak konfigurasi.
Untuk tim 5 orang Bitbucket Cloud Standard seharga $15 per bulan ($3 per pengguna). Paket gratis hanya tersedia untuk satu pengguna dengan fungsionalitas terbatas.
Bitbucket menyediakan importir bawaan dari GitHub, GitLab dan platform lainnya. Di antarmuka, pilih Import repository, masukkan URL dan data autentikasi — semua commit dan cabang akan dipindahkan.
Data Center — versi perusahaan Bitbucket untuk instalasi di server sendiri dengan klasterisasi, Smart Mirroring dan audit. Cocok untuk organisasi dengan ratusan pengembang dan persyaratan keamanan data.
Ringkasan
Kami akan mengembangkan aplikasi seluler turnkey
IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.
Baca juga