Pull requests
Buat pull request dan deskripsi PR langsung dari IDE-mu. Bob menganalisis perubahan, membuat deskripsi detail, dan menyederhanakan workflowmu.
Kenapa pakai fitur ini?
- Hemat waktu: Buat deskripsi PR yang detail secara otomatis berdasarkan perubahanmu.
- Jaga konsistensi: Pastikan semua PR mengikuti format yang konsisten.
- Tingkatkan kolaborasi: Berikan konteks yang jelas bagi reviewer dengan deskripsi yang terstruktur.
- Sederhanakan workflow: Buat PR tanpa keluar dari IDE.
Cara kerjanya
Bob menganalisis perubahan branch, riwayat commit, dan nama branch untuk memahami tujuan dan cakupan pekerjaanmu. Kemudian menghasilkan judul PR yang bermakna dan deskripsi detail yang merangkum perubahanmu, sehingga reviewer lebih mudah memahami konteks dan tujuan PR-mu. Setelah dibuat, kamu bisa meninjau dan mengedit deskripsi PR sebelum submit.
Proses pembuatan PR bersifat interaktif, memungkinkanmu memilih target branch dan remote repository sebelum membuat PR.
Mulai menggunakan
Prasyarat
- Perubahanmu harus sudah di-commit ke sebuah branch.
- Kamu harus memiliki akses push ke remote repository.
Penggunaan dasar
Kamu bisa memilih dari 3 opsi untuk memulai alur PR:
- Klik ikon PR di panel Source Control.
- Gunakan command palette (Cmd + Shift + P di Mac, Ctrl + Shift + P di Windows/Linux) dan cari "Bob: Generate PR".
- Ketik
/create-prdi antarmuka chat Bob.
Bob kemudian akan memandumu melalui langkah-langkah berikut:
- Pilih base branch yang ingin kamu merge ke dalamnya. Bob akan menyarankan tiga branch yang paling mungkin.
- Pilih remote repository, jika kamu memiliki beberapa remote.
- Tinjau deskripsi dan judul PR yang dihasilkan.
- Buat PR.
- Dapatkan link PR yang baru dibuat di chat-mu.
Menggunakan template untuk deskripsi PR
Bob secara otomatis mendeteksi dan menggunakan template PR yang ada di proyekmu saat membuat deskripsi pull request. Ini memastikan PR-mu konsisten dengan standar yang ditetapkan timmu. Ketika Bob mendeteksi beberapa template PR di proyekmu, kamu bisa memilih template mana yang akan diterapkan ke pull request-mu.
Deteksi template
Bob mencari template PR di lokasi berikut relatif terhadap root proyekmu:
${cwd}/pull_request_template.md${cwd}/docs/pull_request_template.md${cwd}/.github/pull_request_template.md${cwd}/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md${cwd}/PULL_REQUEST_TEMPLATE/pull_request_template.md${cwd}/docs/PULL_REQUEST_TEMPLATE/pull_request_template.md
Jika Bob menemukan beberapa template, Bob akan meminta pengguna memilih template mana yang digunakan untuk deskripsi PR.
Template default
Jika tidak ada template yang ditemukan di proyekmu, Bob menggunakan template bawaan yang mencakup:
- Judul deskriptif yang berasal dari nama branchmu
- Ringkasan perubahan
- Detail implementasi utama
- Informasi pengujian
- Link atau referensi yang relevan
Mengedit deskripsi yang dihasilkan
Setelah membuat deskripsi PR, Bob menyajikannya secara inline di chat. Kamu kemudian bisa:
- Konfirmasi dan lanjutkan: Setujui deskripsi apa adanya untuk melanjutkan pembuatan PR.
- Minta perubahan: Ketik feedback-mu di chat dan Bob akan meregenerasi deskripsi berdasarkan input-mu. Kamu bisa melakukan iterasi sebanyak yang diperlukan sebelum konfirmasi.
Kustomisasi template
Untuk hasil terbaik dengan pembuatan PR Bob:
- Gunakan heading bagian yang jelas di template-mu (misalnya,
## Summary,## Changes) - Sertakan placeholder text yang memberikan konteks (misalnya,
<!-- Describe the purpose of this PR -->) - Pertimbangkan menambahkan bagian untuk instruksi pengujian dan isu terkait
Tips dan best practice
- Gunakan nama branch yang deskriptif untuk membantu Bob membuat deskripsi PR yang lebih akurat.
- Tinjau dan edit deskripsi yang dihasilkan sebelum membuat PR.
Commit messages
Buat commit message yang bermakna secara otomatis dengan Bob. Hemat waktu, jaga konsistensi, dan ikuti standar conventional commit dengan bantuan AI.
Literate coding
Tulis kode dengan bantuan AI langsung di editormu menggunakan instruksi bahasa alami tepat di tempat kode seharusnya berada. Bob menghasilkan implementasi dalam konteks dengan inline diff.