Kolaborasi dengan Pull Request di GitHub
Setelah kamu memahami alur kerja dasar Git dan cara menggunakan fork, sekarang kita akan belajar bagaimana berkolaborasi dalam tim menggunakan Pull Request di GitHub.
Apa itu Pull Request?
Pull Request (PR) adalah cara untuk memberitahu anggota tim bahwa kamu telah menyelesaikan sebuah fitur atau perbaikan. Ini seperti mengajukan “usulan perubahan kode” yang bisa diperiksa oleh tim sebelum digabungkan ke kode utama.
Skenario 1: Kolaborasi Tim Kecil
Mari kita bayangkan sebuah skenario umum: kamu bekerja dalam tim yang terdiri dari 3 orang untuk membuat situs web toko daring.
Pembagian Tugas:
- Andi: Mengerjakan halaman produk
- Budi: Mengerjakan fitur keranjang belanja
- Citra: Mengerjakan halaman pembayaran
Alur Kerja yang Baik:
-
Buat Cabang untuk Fitur Baru
# Budi membuat cabang untuk fitur keranjang git checkout main git pull origin main git checkout -b fitur/keranjang-belanja -
Kerjakan Fitur dan Simpan Perubahan Secara Teratur
# Setelah menambahkan beberapa kode git add . git commit -m "Tambah tampilan keranjang belanja" # Lanjut menulis kode... git commit -m "Tambah fungsi hitung total" -
Kirim dan Buat Pull Request
git push origin fitur/keranjang-belanjaLalu di GitHub:
- Klik “Compare & pull request”
- Tulis deskripsi yang jelas:
# Fitur Keranjang Belanja Menambahkan fitur keranjang belanja dengan fungsi: - Tampilan daftar produk di keranjang - Perhitungan total harga - Tombol perbarui jumlah ## Cara Pengujian 1. Klik "Tambah ke Keranjang" di halaman produk 2. Buka halaman keranjang 3. Coba ubah jumlah produk ## Tangkapan Layar [Tambahkan tangkapan layar fitur]
Skenario 2: Mengatasi Konflik Umum
Kasus: Konflik di style.css
Bayangkan Andi dan Budi sama-sama mengubah berkas style.css:
Andi mengubah warna tombol:
.button-primary {
background-color: #007bff;
}Budi juga mengubah warna yang sama:
.button-primary {
background-color: #0056b3;
}Cara Mengatasi:
-
Selalu Perbarui Cabang Dulu
git checkout main git pull origin main git checkout fitur/keranjang-belanja git merge main -
Jika Terjadi Konflik
# Git akan menunjukkan konflik seperti ini: .button-primary { <<<<<<< HEAD background-color: #007bff; ======= background-color: #0056b3; >>>>>>> main } -
Diskusikan dengan Tim
- Buat rapat singkat untuk membahas konflik
- Putuskan warna mana yang akan dipakai
- Atau buat sistem desain baru yang disepakati bersama
-
Selesaikan Konflik
# Setelah mengedit berkas git add style.css git commit -m "Selesaikan konflik warna tombol-utama" git push origin fitur/keranjang-belanja
Skenario 3: Pemeriksaan Kode dan Revisi
Kasus: Tinjauan dari Senior
Misalkan kamu mendapat komentar pemeriksaan seperti ini:
@senior-dev menulis:
- Tolong tambahkan validasi masukan jumlah produk
- Gunakan format mata uang untuk harga
- Ada masalah saat keranjang kosongCara Menanggapi:
-
Buat Perubahan yang Diminta
git checkout fitur/keranjang-belanja # Lakukan perubahan yang diminta -
Simpan Perubahan dengan Jelas
git add . git commit -m "Revisi: Tambah validasi dan format mata uang" git push origin fitur/keranjang-belanja -
Balas Komentar di GitHub
@senior-dev Terima kasih tinjauannya! Saya sudah: - ✅ Menambah validasi min=1, max=99 - ✅ Menggunakan format mata uang - ✅ Memperbaiki tampilan keranjang kosong Mohon diperiksa kembali 🙏
Tips Penting Kolaborasi
-
Komunikasi adalah Kunci
- Gunakan deskripsi yang jelas
- Tambahkan tangkapan layar atau video jika perlu
- Jawab komentar dengan sopan dan informatif
-
Buat Pull Request yang Ringkas
- Lebih baik buat beberapa permintaan kecil
- Fokus pada satu fitur per permintaan
- Lebih mudah diperiksa dan digabungkan
-
Perbarui Cabang Secara Teratur
# Minimal sehari sekali git checkout main git pull origin main git checkout fitur/keranjang-belanja git merge main -
Gunakan Mode Draf
- Jika fitur belum selesai, buat sebagai draf
- Tim bisa melihat kemajuan tanpa perlu pemeriksaan
- Ubah ke siap ketika selesai
-
Dokumentasi yang Baik
- Perbarui README jika perlu
- Tambah komentar untuk kode kompleks
- Buat dokumen teknis untuk fitur besar
Daftar Periksa Pull Request
Gunakan daftar periksa ini sebelum meminta tinjauan:
- Sudah mengambil versi terbaru dari main
- Semua pengujian berhasil
- Tidak ada konflik
- Kode sudah rapi dan ada komentar
- Deskripsi permintaan lengkap
- Sudah diuji di komputer lokal
- Tangkapan layar/video (jika ada antarmuka)
Kesimpulan
Kolaborasi yang baik membutuhkan:
- Komunikasi yang jelas
- Menghormati tinjauan kode
- Menjaga kode tetap rapi
- Perbarui cabang secara rutin
- Dokumentasi yang baik
Yang terpenting, jangan takut untuk bertanya dan belajar dari masukan! 🚀