Proses Git di Tim Nyata: Alur Kerja Mana yang Dipilih
Dalam wawancara kerja, sering ditanyakan: 'Alur kerja Git apa yang pernah Anda gunakan?' Setelah bagian ini, Anda akan memiliki jawaban yang jujur dan mendetail. Kita akan membahas tiga pendekatan populer — Feature Branch Workflow, Git Flow, dan Trunk-Based Development — serta membahas di mana masing-masing bekerja dengan baik dan di mana menjadi hambatan.
- Anda akan dapat mendeskripsikan tiga alur kerja Git yang umum dalam wawancara dan menjelaskan perbedaannya.
- Anda akan memahami bagaimana ukuran tim dan frekuensi rilis memengaruhi pilihan proses pengembangan.
- Anda akan belajar mengajukan pertanyaan yang tepat tentang alur kerja saat bergabung dengan tim baru.
จุดเริ่มต้นของบทเรียน
Mengapa Feature Branch Workflow?
- Feature Branch = draf terpisah untuk setiap bab
- Isolasi kode untuk pekerjaan paralel
- Eksperimen aman tanpa risiko pada main
- Kemudahan penerapan untuk tim di semua level
- Ideal untuk memulai dan proyek kecil
Bayangkan Anda sedang mengerjakan sebuah buku dan untuk setiap bab Anda membuat draf terpisah. Begitulah cara kerja Feature Branch Workflow — setiap fitur baru hidup di lingkungan yang terisolasi. Pendekatan ini memungkinkan tim mengerjakan tugas berbeda secara bersamaan tanpa menimbulkan kekacauan di kode utama. Anda dapat bereksperimen dengan tenang, mengetahui bahwa cabang utama tetap stabil. Terutama cocok untuk tim kecil yang mengutamakan kecepatan dan fleksibilitas. Saat fitur siap, ia melewati code review dan baru kemudian masuk ke kode utama. Kesederhanaan dan efisiensi — itulah yang membuat pendekatan ini begitu populer.
Buat Cabang Feature dengan 2 Perintah
- Feature Branch Workflow — sederhana dan efisien
- Buat cabang dari main yang terkini
- git checkout -b feature/new-login
- Nama cabang mencerminkan tugas
- feature/, fix/, docs/ — prefiks untuk kejelasan
Mari kita buat cabang feature secara praktik. Beralih ke cabang utama dan perbarui: git checkout main double ampersand git pull. Sekarang buat cabang baru untuk tugas kita: git checkout minus b feature slash new-login. Flag minus b memberi tahu Git untuk membuat cabang baru dan langsung beralih ke sana. Hanya dua perintah — dan Anda siap bekerja. Pastikan nama cabang mencerminkan inti tugas: feature slash, fix slash, atau docs slash di awal akan membantu dengan cepat memahami tujuan cabang. Sekarang Anda dapat memulai perubahan.
git checkout main && git pull
# Memperbarui cabang utama
git checkout -b feature/new-login
# Membuat dan beralih ke cabang baru
Buat Cabang Feature dengan 2 Perintah
- Feature Branch Workflow — sederhana dan efisien
- Buat cabang dari main yang terkini
- git checkout -b feature/new-login
- Nama cabang mencerminkan tugas
- feature/, fix/, docs/ — prefiks untuk kejelasan
Mari kita buat cabang feature secara praktik. Beralih ke cabang utama dan perbarui: git checkout main double ampersand git pull. Sekarang buat cabang baru untuk tugas kita: git checkout minus b feature slash new-login. Flag minus b memberi tahu Git untuk membuat cabang baru dan langsung beralih ke sana. Hanya dua perintah — dan Anda siap bekerja. Pastikan nama cabang mencerminkan inti tugas: feature slash, fix slash, atau docs slash di awal akan membantu dengan cepat memahami tujuan cabang. Sekarang Anda dapat memulai perubahan.
git checkout main && git pull
# Memperbarui cabang utama
git checkout -b feature/new-login
# Membuat dan beralih ke cabang baru
บทเรียนฉบับเต็มใช้ได้เมื่อสมัครสมาชิก
ฉบับเต็มมีสไลด์เพิ่มอีก 31 สไลด์
วิดีโอ สไลด์ทั้งหมด โน้ต แบบทดสอบ AI ติวเตอร์ และการสัมภาษณ์จะเปิดหลังเข้าสู่ระบบและสมัครสมาชิก
เข้าสู่ระบบหรือลงทะเบียน สมัครสมาชิกเนื้อหาบทเรียน
- Mengapa Feature Branch Workflow?
- Buat Cabang Feature dengan 2 Perintah
- Buat Cabang Feature dengan 2 Perintah
- Kirim Perubahan untuk Review
- Melakukan Code Review dan Merge
- Git Flow: Jalur Perakitan untuk Pengembangan
- Cabang Feature dan Persiapan Rilis
- Perbaikan Darurat melalui Hotfix
- Praktik: Membuat Feature Branch
- Menjalankan Git Flow di Proyek
- Pengembangan Fitur Baru: Dari Branch hingga Penggabungan
- Menyiapkan Rilis: Mengemas Perubahan
- Perbaikan Mendesak: Hotfix dalam Tindakan
- Trunk-Based Development: Inti Pendekatan
- Bagaimana Bekerja dengan Fungsionalitas yang Belum Siap di TBD
- Praktik: Commit Sering ke main
- Kapan Memilih Trunk-Based Development
- Kesalahan 1: Git Flow untuk Tim Kecil
- Kesalahan 2: Trunk-Based Tanpa Code Review
- Kesalahan 3: Feature Branch yang Berumur Panjang
- Cara Memilih Workflow yang Tepat
- Cara Memilih Proses Git: Kriteria Kunci
- Feature Branch: Mobil Kota untuk Startup
- Git Flow: SUV untuk Tim Besar
- Trunk-Based: Mobil Balap untuk Rilis yang Sering
- Analisis Proses Git Saat Ini: Apa yang Salah dengan Git Flow
- Rencana Migrasi: Bagaimana Pindah dari Rumah ke Studio
- Melatih Tim dengan Praktik TBD Baru
- Praktik: Migrasi Feature Branch ke TBD
- Bagaimana Membicarakan Workflow di Wawancara
- Contoh Masalah dan Solusinya
- Cara Menerapkan Perubahan dalam Proses
- Hal yang Tidak Boleh Dikatakan dalam Wawancara
- Memilih Jalan Sendiri: Hasil dan Tugas Rumah
บทความเกี่ยวกับบทเรียนนี้
- Git merge กับ rebase: ควรเลือกแบบไหนสำหรับทีมของคุณ
- คำถาม Git ในการสัมภาษณ์งาน: 25 ข้อพร้อมคำตอบ
- Git Flow, GitHub Flow และ trunk-based: ควรเลือก Git workflow แบบไหน
- Git และ GitHub: ต่างกันอย่างไร และเชื่อมโยงกันอย่างไร
- วิธีติดตั้ง Git บน Windows, macOS และ Linux
บทเรียนทั้งหมดในคอร์สนี้
- Pengantar: Git dari Nol hingga Pengembang yang Percaya Diri
- Apa Sebenarnya Git Itu — dan Kenapa Tanpanya Sulit Dapat Kerja
- Instalasi dan Konfigurasi: Menyiapkan Git untuk Pertama Kali
- Repositori Pertama: init, add, commit dan Keajaiban Indeks
- Membaca Riwayat: log, diff, show dan Navigasi ke Masa Lalu
- Cabang: Realitas Paralel untuk Kode Anda
- Membatalkan Kesalahan: restore, reset, revert — dengan Benar dan Berbahaya
- GitHub dan Repositori Jarak Jauh: Kode Anda di Awan
- Kerja Tim: Fork, Feature Branch, dan Pull Request
- Konflik Penggabungan: Jangan Panik — Pahami dan Selesaikan
- Proses Git di Tim Nyata: Alur Kerja Mana yang Dipilih
- Alat Lanjutan: rebase, stash, cherry-pick, dan tag
- Proyek Akhir: Simulasi Pengembangan Tim Nyata