Pelajari cara menampilkan daftar branch Git lokal dan remote serta memfilternya menggunakan git branch. Kuasai pemecahan masalah dengan git fetch, git checkout, dan git prune.
Jika Anda pernah mengerjakan lebih dari satu fitur sekaligus, situasi ini mungkin terdengar familiar: Anda menjalankan perintah Git, dan kini Anda tidak lagi yakin di mana hasil kerja Anda dari minggu lalu sebenarnya berada.
Masalah ini semakin sering terjadi seiring pertumbuhan proyek. Di awal, sebuah repositori mungkin hanya memiliki branch main. Seiring waktu, tim membuat branch untuk fitur baru, perbaikan bug, eksperimen, rilis, dan hotfix darurat.
Di sinilah daftar branch di Git menjadi penting. Ini membantu menjawab pertanyaan-pertanyaan praktis:
Saat ini saya sedang bekerja di branch yang mana?
Branch lain apa saja yang ada di mesin saya?
Branch mana saja yang ada di repositori remote?
Dalam panduan ini, kita akan melihat dasar-dasar menampilkan daftar branch di Git, cara melakukannya, dan cara mengatasi masalah umum.
Jika Git benar-benar baru bagi Anda, saya sarankan mengambil kursus Introduction to Git kami untuk membantu membangun kepercayaan diri sebelum menyelami topik manajemen branch yang lebih mendetail.
Memahami Branch di Git
Sebelum kita mulai menampilkannya, mari kita uraikan apa itu branch Git.
Salah kaprah yang umum adalah mengira branch Git adalah folder terpisah atau salinan penuh dari codebase, padahal sebenarnya branch Git hanyalah penunjuk ringan ke commit tertentu.
Anda bisa menganggapnya sebagai garis waktu paralel tempat Anda dapat membangun fitur atau bereksperimen secara terpisah tanpa memengaruhi kode utama yang stabil. Arsitektur ini membuat pembuatan dan penggabungan branch menjadi sangat cepat dan efisien.
Git melacak posisi Anda saat ini dalam garis waktu tersebut menggunakan referensi khusus bernama HEAD, yang selalu menunjuk ke branch yang sedang Anda kerjakan. Karena branch hanyalah penunjuk, berpindah konteks berlangsung seketika dan tidak memerlukan pemindahan berkas besar.
Dengan fondasi konseptual tersebut, mari kita lihat cara menampilkan daftar branch lokal di repositori Anda.
Branch lokal adalah branch yang ada di komputer Anda. Ia berada di dalam folder .git repositori Anda dan merepresentasikan penunjuk yang dapat dipindahkan ke serangkaian commit. Anda dapat beralih ke branch lokal, melakukan perubahan, dan membuat commit baru di atasnya.
Akan membantu jika Anda memikirkan branch lokal seperti ini:
Miliki salinan repositori Anda
Bergerak maju saat Anda melakukan commit perubahan baru
Tidak diperbarui secara otomatis ketika orang lain mendorong (push) kode
Menggunakan git branch
Perintah paling umum dan mendasar untuk menampilkan daftar branch lokal cukup sederhana:
Saat Anda menjalankan perintah ini tanpa opsi tambahan, Git akan menampilkan semua branch lokal.
Hal-hal penting yang perlu diingat tentang git branch:
Hanya menampilkan branch lokal, bukan yang remote
Tidak menghubungi internet
Tidak mengubah berkas, commit, atau riwayat branch
Karena aman dan cepat, banyak pengembang menjalankan git branch sebagai kebiasaan sebelum memulai pekerjaan baru atau berpindah konteks.
Memahami keluaran
Berikut contoh apa yang mungkin ditampilkan oleh git branch:
bugfix/login-timeout
feature/payment-refactor
* mainDidukung oleh
Meskipun keluarannya terlihat sederhana, ada beberapa detail penting yang tersembunyi di dalamnya.
Pertama, tanda bintang (*) menunjukkan branch yang saat ini di-checkout. Ini adalah branch yang saat ini terikat dengan direktori kerja Anda. Commit baru apa pun yang Anda buat akan masuk ke branch ini.
Kedua, Git biasanya menyorot branch saat ini dengan warna hijau. Ini hanya bantuan visual dari terminal dan tidak mengubah perilaku Git.
Ketiga, perhatikan apa yang tidak ditampilkan:
Tidak ada tanggal commit
Tidak ada nama penulis
Tidak ada informasi remote
Ini disengaja. Git menjaga keluaran default tetap singkat, sehingga mudah dipindai dan dikombinasikan dengan perintah lain.
Tips pemula: Jika terminal Anda terlihat "macet" setelah menjalankan perintah Git, coba tekan q. Git sering menggunakan pager untuk menampilkan keluaran panjang, dan ini adalah cara normal untuk keluar.
Hanya menampilkan branch saat ini
Terkadang, menampilkan semua branch tidak diperlukan. Anda mungkin hanya ingin mengetahui branch mana yang sedang aktif. Git menyediakan perintah khusus untuk ini:
Menggunakan nama branch dalam otomasi atau pipeline CI
Jika Git berada dalam status HEAD terlepas (detached), perintah ini tidak mengembalikan apa pun. Meski awalnya terasa aneh, ini sebenarnya membantu saat menulis skrip yang perlu mendeteksi apakah ada branch yang di-checkout.
Kesalahan umum: Beberapa pengguna mengira Git "rusak" saat tidak ada nama branch yang muncul. Dalam banyak kasus, ini hanya berarti Anda saat ini tidak berada di sebuah branch, melainkan pada commit tertentu.
Cara Menampilkan Daftar Branch Remote dan Semua Branch di Git
Menampilkan branch remote atau bahkan semua branch di Git sangat mirip dengan menampilkan branch lokal.
Menampilkan branch remote di Git
Repositori remote, seperti di GitHub atau GitLab, memiliki branch sendiri. Untuk melihatnya, tambahkan flag -r:
origin/HEAD -> origin/main
origin/bugfix/login-timeout
origin/feature/payment-refactor
origin/mainDidukung oleh
Keluaran contoh ini bisa membingungkan pada awalnya, jadi mari kita uraikan.
Yang Anda lihat di sini adalah branch pelacakan-remote (remote-tracking). Ini adalah referensi lokal yang digunakan Git untuk mengingat kondisi terakhir repositori remote.
Poin kunci untuk dipahami:
Branch ini disimpan secara lokal
Hanya diperbarui saat Anda melakukan fetch
Tidak bergerak secara otomatis
Tips pemula: Anggap branch pelacakan-remote sebagai buku catatan Git. Git menuliskan seperti apa remote terakhir kali Anda memeriksanya, tetapi tidak akan memperbarui buku catatan itu kecuali Anda secara eksplisit melakukan fetch.
Menampilkan semua branch di Git
Untuk melihat branch lokal dan branch pelacakan-remote secara bersamaan, gunakan flag -a:
* main
feature/payment-refactor
remotes/origin/bugfix/login-timeout
remotes/origin/mainDidukung oleh
Tampilan gabungan ini membantu Anda memahami bagaimana branch lokal berelasi dengan branch remote.
Pola penamaan yang perlu diperhatikan:
Branch lokal muncul sebagai nama sederhana seperti main
Branch pelacakan-remote muncul di bawah remotes/origin/
Tampilan ini sangat berguna saat memutuskan apakah akan membuat branch lokal baru yang melacak branch remote yang ada. Jika Anda perlu mengklon repositori dan bekerja pada branch tertentu, lihat panduan kami tentang cara mengklon branch tertentu di Git.
Selalu lakukan fetch terlebih dahulu
Jika rekan tim mendorong branch baru dan Anda tidak dapat melihatnya, alasan paling umum adalah cache lokal Anda sudah kedaluwarsa.
Perintah ini aman dijalankan kapan saja. Ini tidak melakukan merge kode atau menimpa pekerjaan Anda. Banyak tim memperlakukan git fetch sebagai langkah rutin sebelum memeriksa branch.
Kesalahan umum: Pemula sering bingung antara git fetch dan git pull. Fetch hanya memperbarui informasi branch, sementara pull juga menggabungkan perubahan ke branch Anda saat ini.
Cara Mendapatkan Detail Lebih Lanjut pada Daftar Branch Git
Terkadang, nama branch saja tidak cukup. Jika Anda ingin melihat detail tambahan, ada beberapa flag yang membantu.
Melihat commit terakhir
Untuk melihat apa yang sebenarnya ada pada setiap branch, gunakan:
* main a1b2c3d Fix typo in README
feature/payment-refactor e4f5g6h Refactor payment serviceDidukung oleh
Seperti yang Anda lihat, flag -v menambahkan konteks penting:
Hash commit pendek menunjukkan ke mana branch saat ini menunjuk
Pesan commit memberi petunjuk tujuan branch
Ini adalah salah satu cara termudah untuk memahami kegunaan sebuah branch tanpa melakukan checkout.
Tips pemula: Jika Anda tidak yakin apakah sebuah branch aman untuk dihapus, memeriksa pesan commit terakhirnya adalah petunjuk awal yang baik. Untuk panduan lengkap menghapus branch, lihat tutorial kami tentang cara menghapus branch Git.
Memeriksa koneksi upstream
Branch lokal sering melacak branch remote yang sesuai. Untuk melihat hubungan ini, jalankan:
* main a1b2c3d [origin/main] Fix typo in README
feature/payment-refactor e4f5g6h [origin/feature/payment-refactor] Refactor payment serviceDidukung oleh
Keluaran ini memberi tahu Anda:
Branch remote mana yang ditautkan ke branch lokal Anda
Dari mana git pull akan menarik
Ke mana git push akan mendorong
Jika sebuah branch tidak memiliki upstream, tidak akan ada apa pun di dalam tanda kurung. Ini sering menjelaskan kesalahan push atau pull.
Kesalahan umum: Mencoba menjalankan git pull pada branch tanpa upstream biasanya akan gagal. Dalam kasus tersebut, Anda perlu menetapkan upstream terlebih dahulu atau mendorong branch tersebut untuk pertama kali.
Menyortir branch berdasarkan tanggal atau versi
Untuk menemukan branch yang baru aktif, Anda bisa menyortir berdasarkan tanggal commit:
Ini menghormati nomor versi dan menghindari urutan alfabet yang membingungkan.
Cara Memfilter Daftar Branch di Git
Jika Anda mencari branch tertentu, pemfilteran bisa sangat membantu. Saya akan menunjukkan cara melakukannya menggunakan beberapa flag penting.
Mencari berdasarkan pola nama
Terutama di repositori besar, memfilter berdasarkan nama dapat menghemat banyak waktu untuk menemukan branch yang tepat. Anda dapat memfilter berdasarkan nama menggunakan flag --list bersama istilah pencarian Anda:
Perhatikan bagaimana * digunakan sebagai wildcard: Hasil di sini hanya menampilkan branch yang cocok dengan pola, jadi yang dimulai dengan feature. Tim sering menggunakan prefiks seperti feature/, bugfix/, atau hotfix/ untuk menjaga kerapian. Anggap saja sebagai folder untuk branch Anda.
Menemukan branch yang sudah digabung vs. belum digabung
Dua filter yang sangat penting adalah:
git branch --mergedgit branch --no-mergedDidukung oleh
Perintah ini membandingkan branch lain dengan branch Anda saat ini.
--merged menampilkan branch yang perubahannya sudah termasuk (pelajari lebih lanjut tentang Git merge)
--no-merged menampilkan branch yang masih memiliki commit unik
Pengingat keamanan: Selalu periksa ulang bahwa Anda berada di branch dasar yang benar (seringnya main atau develop) sebelum menggunakan --merged. Hasilnya bergantung pada branch Anda saat ini.
Menemukan branch yang memuat sebuah commit
Jika Anda mengetahui hash commit dan ingin mencari di mana commit itu berada, gunakan perintah ini:
Ini berguna saat melacak bug atau memverifikasi bahwa sebuah perbaikan telah digabungkan.
Misalnya, ketika rekan kerja memberi tahu Anda: "Saya menemukan bug di hash commit ini; branch mana saja yang terpengaruh?" Anda dapat menggunakan perintah ini untuk menentukan lokasi pasti bug tersebut.
Menggabungkan filter untuk alur kerja lanjutan
Filter yang saya tunjukkan dapat digabungkan untuk mempersempit hasil lebih lanjut. Mari lihat satu contoh:
git branch --list'feature/*' --no-mergedDidukung oleh
Hasil perintah ini dengan cepat menampilkan semua branch feature/ yang belum digabung dan membantu tim tetap terorganisasi.
Pemecahan Masalah Umum
Jika Anda mengalami masalah, jangan khawatir; masalah paling umum cukup mudah diperbaiki.
Branch remote hilang
Jika Anda tidak dapat melihat branch yang didorong orang lain, alasan paling mungkin adalah Anda lupa melakukan fetch. Untuk menanganinya:
Jalankan git fetch
Kemudian tampilkan daftar branch lagi
Jika fetch yang terlewat adalah masalahnya, perbaikan cepat ini langsung memperbarui tampilan lokal Anda.
Status HEAD terlepas
Terkadang, keluaran git branch terlihat seperti ini:
Ini berarti Anda tidak berada di sebuah branch. Anda sedang melihat commit tertentu secara langsung.
Berada dalam status HEAD terlepas tidak berbahaya dengan sendirinya, tetapi commit baru apa pun yang Anda buat bisa sulit ditemukan nanti kecuali Anda membuat branch.
Untuk kembali bekerja normal, beralihlah ke branch yang sudah ada:
Alternatif modern: Sejak Git 2.23+, Anda dapat menggunakan git switch <branch-name> yang lebih bersih dan aman serta dirancang khusus untuk berpindah branch.
Anda juga dapat membuat branch baru dari posisi Anda saat ini menggunakan flag -b:
Ini membersihkan referensi usang dan menjaga repositori Anda tetap rapi.
Pro tip: Sebagai alternatif, Anda juga dapat menggunakan git fetch --prune setiap kali melakukan fetch, sehingga repo diperbarui dan dibersihkan dalam satu langkah.
Kesimpulan
Menampilkan daftar branch di Git adalah keterampilan kunci yang membantu Anda memahami repositori. Perintah dan flag yang dibahas dalam tutorial ini akan membantu Anda menghindari kesalahan dan bekerja dengan percaya diri bersama orang lain.
Saat memulai proyek baru, biasanya layak untuk memikirkan struktur branch seperti apa yang Anda perlukan. Untuk beberapa saran, lihat panduan ini tentang strategi branching Git.
Siap melangkah melampaui dasar-dasar? Jalur keterampilanGit Fundamentals menawarkan konsep dan pengalaman praktik yang dibutuhkan untuk beralih dari pemula menjadi mahir.
Git List Branches FAQs
Apa perbedaan antara branch lokal dan branch remote?⌄
Branch lokal ada di mesin Anda. Branch remote mencerminkan keadaan branch pada repositori remote.
Bagaimana cara mengetahui branch mana yang sudah digabung?⌄
Jalankan git branch --merged untuk melihat branch yang perubahannya sudah termasuk dalam branch saat ini.
Apakah aman menghapus branch setelah menampilkannya?⌄
Ya, jika sudah digabung. Gunakan git branch -d branch-name. Git akan memblokir penghapusan jika belum aman untuk dihapus. Git menganggap sebuah branch "aman" jika telah digabung ke branch Anda saat ini atau jika sudah didorong ke repositori remote.
Mengapa saya tidak bisa melihat branch yang ada di remote?⌄
Hampir pasti, repo lokal belum melakukan fetch. Jalankan git fetch, lalu gunakan git branch -r untuk melihat branch remote.
Apa yang ditampilkan oleh git branch?⌄
Ini hanya menampilkan branch lokal Anda. Branch saat ini ditandai dengan *. Ini hanya menampilkan branch remote saat Anda menambahkan flag -r.
Bagaimana cara menampilkan daftar branch yang diurutkan berdasarkan aktivitas terbaru?⌄
Gunakan git branch --sort=-committerdate untuk menampilkan branch dengan commit terbaru di bagian atas. Ini membantu saat Anda ingin menemukan branch yang baru saja Anda atau tim Anda kerjakan. Anda juga dapat menggabungkannya dengan flag lain seperti git branch -v --sort=-committerdate untuk melihat pesan commit di samping daftar yang sudah diurutkan.
Saya Austin, seorang blogger dan penulis teknologi dengan pengalaman bertahun-tahun sebagai data scientist dan analis data di bidang kesehatan. Memulai perjalanan teknologi dengan latar belakang biologi, kini saya membantu orang lain melakukan transisi yang sama melalui blog teknologi saya. Ketertarikan saya pada teknologi mendorong kontribusi tulisan saya untuk puluhan perusahaan SaaS, menginspirasi orang lain dan membagikan pengalaman saya.
Temukan alasan mengapa Anda sebaiknya (tidak) menggunakan spaghetti plot untuk menyampaikan ketidakpastian jalur prediksi badai serta dampaknya terhadap interpretasi.
Kuasai pertanyaan wawancara basis data, dari konsep SQL dasar hingga skenario desain sistem tingkat lanjut. Panduan mendalam ini mencakup semua yang Anda perlukan untuk sukses di wawancara DBMS dan meraih peran berikutnya.
Pelajari pengendalian versi dengan Git, mulai dari dasar hingga alur kerja tingkat lanjut. Lacak perubahan, kelola repositori, dan kolaborasi secara efisien.
Jika Anda pernah mengerjakan lebih dari satu fitur sekaligus, situasi ini mungkin terdengar familiar: Anda menjalankan perintah Git, dan kini Anda tidak lagi yakin di mana hasil kerja Anda dari minggu lalu sebenarnya berada.
Masalah ini semakin sering terjadi seiring pertumbuhan proyek. Di awal, sebuah repositori mungkin hanya memiliki branch
main. Seiring waktu, tim membuat branch untuk fitur baru, perbaikan bug, eksperimen, rilis, dan hotfix darurat.Di sinilah daftar branch di Git menjadi penting. Ini membantu menjawab pertanyaan-pertanyaan praktis:
Dalam panduan ini, kita akan melihat dasar-dasar menampilkan daftar branch di Git, cara melakukannya, dan cara mengatasi masalah umum.
Jika Git benar-benar baru bagi Anda, saya sarankan mengambil kursus Introduction to Git kami untuk membantu membangun kepercayaan diri sebelum menyelami topik manajemen branch yang lebih mendetail.
Memahami Branch di Git
Sebelum kita mulai menampilkannya, mari kita uraikan apa itu branch Git.
Salah kaprah yang umum adalah mengira branch Git adalah folder terpisah atau salinan penuh dari codebase, padahal sebenarnya branch Git hanyalah penunjuk ringan ke commit tertentu.
Anda bisa menganggapnya sebagai garis waktu paralel tempat Anda dapat membangun fitur atau bereksperimen secara terpisah tanpa memengaruhi kode utama yang stabil. Arsitektur ini membuat pembuatan dan penggabungan branch menjadi sangat cepat dan efisien.
Sumber: Git
Git melacak posisi Anda saat ini dalam garis waktu tersebut menggunakan referensi khusus bernama HEAD, yang selalu menunjuk ke branch yang sedang Anda kerjakan. Karena branch hanyalah penunjuk, berpindah konteks berlangsung seketika dan tidak memerlukan pemindahan berkas besar.
Untuk detail lebih lanjut, lihat tutorial kami tentang branch Git atau lihat lembar contekan Git.
Cara Menampilkan Daftar Branch Lokal di Git
Dengan fondasi konseptual tersebut, mari kita lihat cara menampilkan daftar branch lokal di repositori Anda.
Branch lokal adalah branch yang ada di komputer Anda. Ia berada di dalam folder
.gitrepositori Anda dan merepresentasikan penunjuk yang dapat dipindahkan ke serangkaian commit. Anda dapat beralih ke branch lokal, melakukan perubahan, dan membuat commit baru di atasnya.Akan membantu jika Anda memikirkan branch lokal seperti ini:
Menggunakan git branch
Perintah paling umum dan mendasar untuk menampilkan daftar branch lokal cukup sederhana:
Saat Anda menjalankan perintah ini tanpa opsi tambahan, Git akan menampilkan semua branch lokal.
Hal-hal penting yang perlu diingat tentang
git branch:Karena aman dan cepat, banyak pengembang menjalankan
git branchsebagai kebiasaan sebelum memulai pekerjaan baru atau berpindah konteks.Memahami keluaran
Berikut contoh apa yang mungkin ditampilkan oleh
git branch:Meskipun keluarannya terlihat sederhana, ada beberapa detail penting yang tersembunyi di dalamnya.
Pertama, tanda bintang (
*) menunjukkan branch yang saat ini di-checkout. Ini adalah branch yang saat ini terikat dengan direktori kerja Anda. Commit baru apa pun yang Anda buat akan masuk ke branch ini.Kedua, Git biasanya menyorot branch saat ini dengan warna hijau. Ini hanya bantuan visual dari terminal dan tidak mengubah perilaku Git.
Ketiga, perhatikan apa yang tidak ditampilkan:
Ini disengaja. Git menjaga keluaran default tetap singkat, sehingga mudah dipindai dan dikombinasikan dengan perintah lain.
Tips pemula: Jika terminal Anda terlihat "macet" setelah menjalankan perintah Git, coba tekan
q. Git sering menggunakan pager untuk menampilkan keluaran panjang, dan ini adalah cara normal untuk keluar.Hanya menampilkan branch saat ini
Terkadang, menampilkan semua branch tidak diperlukan. Anda mungkin hanya ingin mengetahui branch mana yang sedang aktif. Git menyediakan perintah khusus untuk ini:
Keluaran hanya berupa nama branch:
Situasi umum di mana ini berguna antara lain:
Jika Git berada dalam status HEAD terlepas (detached), perintah ini tidak mengembalikan apa pun. Meski awalnya terasa aneh, ini sebenarnya membantu saat menulis skrip yang perlu mendeteksi apakah ada branch yang di-checkout.
Kesalahan umum: Beberapa pengguna mengira Git "rusak" saat tidak ada nama branch yang muncul. Dalam banyak kasus, ini hanya berarti Anda saat ini tidak berada di sebuah branch, melainkan pada commit tertentu.
Cara Menampilkan Daftar Branch Remote dan Semua Branch di Git
Menampilkan branch remote atau bahkan semua branch di Git sangat mirip dengan menampilkan branch lokal.
Menampilkan branch remote di Git
Repositori remote, seperti di GitHub atau GitLab, memiliki branch sendiri. Untuk melihatnya, tambahkan flag
-r:Keluaran contoh ini bisa membingungkan pada awalnya, jadi mari kita uraikan.
Yang Anda lihat di sini adalah branch pelacakan-remote (remote-tracking). Ini adalah referensi lokal yang digunakan Git untuk mengingat kondisi terakhir repositori remote.
Poin kunci untuk dipahami:
Tips pemula: Anggap branch pelacakan-remote sebagai buku catatan Git. Git menuliskan seperti apa remote terakhir kali Anda memeriksanya, tetapi tidak akan memperbarui buku catatan itu kecuali Anda secara eksplisit melakukan fetch.
Menampilkan semua branch di Git
Untuk melihat branch lokal dan branch pelacakan-remote secara bersamaan, gunakan flag
-a:Tampilan gabungan ini membantu Anda memahami bagaimana branch lokal berelasi dengan branch remote.
Pola penamaan yang perlu diperhatikan:
Branch lokal muncul sebagai nama sederhana seperti
mainBranch pelacakan-remote muncul di bawah
remotes/origin/Tampilan ini sangat berguna saat memutuskan apakah akan membuat branch lokal baru yang melacak branch remote yang ada. Jika Anda perlu mengklon repositori dan bekerja pada branch tertentu, lihat panduan kami tentang cara mengklon branch tertentu di Git.
Selalu lakukan fetch terlebih dahulu
Jika rekan tim mendorong branch baru dan Anda tidak dapat melihatnya, alasan paling umum adalah cache lokal Anda sudah kedaluwarsa.
Solusinya adalah melakukan fetch:
Apa yang dilakukan
git fetch:Perintah ini aman dijalankan kapan saja. Ini tidak melakukan merge kode atau menimpa pekerjaan Anda. Banyak tim memperlakukan
git fetchsebagai langkah rutin sebelum memeriksa branch.Kesalahan umum: Pemula sering bingung antara
git fetchdangit pull. Fetch hanya memperbarui informasi branch, sementara pull juga menggabungkan perubahan ke branch Anda saat ini.Cara Mendapatkan Detail Lebih Lanjut pada Daftar Branch Git
Terkadang, nama branch saja tidak cukup. Jika Anda ingin melihat detail tambahan, ada beberapa flag yang membantu.
Melihat commit terakhir
Untuk melihat apa yang sebenarnya ada pada setiap branch, gunakan:
Keluarnya mungkin terlihat seperti ini:
Seperti yang Anda lihat, flag
-vmenambahkan konteks penting:Ini adalah salah satu cara termudah untuk memahami kegunaan sebuah branch tanpa melakukan checkout.
Tips pemula: Jika Anda tidak yakin apakah sebuah branch aman untuk dihapus, memeriksa pesan commit terakhirnya adalah petunjuk awal yang baik. Untuk panduan lengkap menghapus branch, lihat tutorial kami tentang cara menghapus branch Git.
Memeriksa koneksi upstream
Branch lokal sering melacak branch remote yang sesuai. Untuk melihat hubungan ini, jalankan:
Keluaran ini memberi tahu Anda:
Branch remote mana yang ditautkan ke branch lokal Anda
Dari mana
git pullakan menarikKe mana
git pushakan mendorongJika sebuah branch tidak memiliki upstream, tidak akan ada apa pun di dalam tanda kurung. Ini sering menjelaskan kesalahan push atau pull.
Kesalahan umum: Mencoba menjalankan
git pullpada branch tanpa upstream biasanya akan gagal. Dalam kasus tersebut, Anda perlu menetapkan upstream terlebih dahulu atau mendorong branch tersebut untuk pertama kali.Menyortir branch berdasarkan tanggal atau versi
Untuk menemukan branch yang baru aktif, Anda bisa menyortir berdasarkan tanggal commit:
Ini menempatkan branch yang paling baru diperbarui di bagian atas dan yang lebih lama di bagian bawah.
Untuk repositori dengan branch bernomor versi, penyortiran semantik lebih berguna:
Ini menghormati nomor versi dan menghindari urutan alfabet yang membingungkan.
Cara Memfilter Daftar Branch di Git
Jika Anda mencari branch tertentu, pemfilteran bisa sangat membantu. Saya akan menunjukkan cara melakukannya menggunakan beberapa flag penting.
Mencari berdasarkan pola nama
Terutama di repositori besar, memfilter berdasarkan nama dapat menghemat banyak waktu untuk menemukan branch yang tepat. Anda dapat memfilter berdasarkan nama menggunakan flag
--listbersama istilah pencarian Anda:Perhatikan bagaimana
*digunakan sebagai wildcard: Hasil di sini hanya menampilkan branch yang cocok dengan pola, jadi yang dimulai denganfeature. Tim sering menggunakan prefiks sepertifeature/,bugfix/, atauhotfix/untuk menjaga kerapian. Anggap saja sebagai folder untuk branch Anda.Menemukan branch yang sudah digabung vs. belum digabung
Dua filter yang sangat penting adalah:
Perintah ini membandingkan branch lain dengan branch Anda saat ini.
--mergedmenampilkan branch yang perubahannya sudah termasuk (pelajari lebih lanjut tentang Git merge)--no-mergedmenampilkan branch yang masih memiliki commit unikPengingat keamanan: Selalu periksa ulang bahwa Anda berada di branch dasar yang benar (seringnya
mainataudevelop) sebelum menggunakan--merged. Hasilnya bergantung pada branch Anda saat ini.Menemukan branch yang memuat sebuah commit
Jika Anda mengetahui hash commit dan ingin mencari di mana commit itu berada, gunakan perintah ini:
Ini berguna saat melacak bug atau memverifikasi bahwa sebuah perbaikan telah digabungkan.
Misalnya, ketika rekan kerja memberi tahu Anda: "Saya menemukan bug di hash commit ini; branch mana saja yang terpengaruh?" Anda dapat menggunakan perintah ini untuk menentukan lokasi pasti bug tersebut.
Menggabungkan filter untuk alur kerja lanjutan
Filter yang saya tunjukkan dapat digabungkan untuk mempersempit hasil lebih lanjut. Mari lihat satu contoh:
Hasil perintah ini dengan cepat menampilkan semua branch
feature/yang belum digabung dan membantu tim tetap terorganisasi.Pemecahan Masalah Umum
Jika Anda mengalami masalah, jangan khawatir; masalah paling umum cukup mudah diperbaiki.
Branch remote hilang
Jika Anda tidak dapat melihat branch yang didorong orang lain, alasan paling mungkin adalah Anda lupa melakukan fetch. Untuk menanganinya:
Jalankan
git fetchKemudian tampilkan daftar branch lagi
Jika fetch yang terlewat adalah masalahnya, perbaikan cepat ini langsung memperbarui tampilan lokal Anda.
Status HEAD terlepas
Terkadang, keluaran
git branchterlihat seperti ini:Ini berarti Anda tidak berada di sebuah branch. Anda sedang melihat commit tertentu secara langsung.
Berada dalam status HEAD terlepas tidak berbahaya dengan sendirinya, tetapi commit baru apa pun yang Anda buat bisa sulit ditemukan nanti kecuali Anda membuat branch.
Untuk kembali bekerja normal, beralihlah ke branch yang sudah ada:
Alternatif modern: Sejak Git 2.23+, Anda dapat menggunakan
git switch <branch-name>yang lebih bersih dan aman serta dirancang khusus untuk berpindah branch.Anda juga dapat membuat branch baru dari posisi Anda saat ini menggunakan flag
-b:Branch masih muncul setelah dihapus
Jika branch remote masih muncul setelah dihapus di server, Anda dapat membersihkan referensi lokalnya dengan perintah berikut:
Ini membersihkan referensi usang dan menjaga repositori Anda tetap rapi.
Pro tip: Sebagai alternatif, Anda juga dapat menggunakan
git fetch --prunesetiap kali melakukan fetch, sehingga repo diperbarui dan dibersihkan dalam satu langkah.Kesimpulan
Menampilkan daftar branch di Git adalah keterampilan kunci yang membantu Anda memahami repositori. Perintah dan flag yang dibahas dalam tutorial ini akan membantu Anda menghindari kesalahan dan bekerja dengan percaya diri bersama orang lain.
Saat memulai proyek baru, biasanya layak untuk memikirkan struktur branch seperti apa yang Anda perlukan. Untuk beberapa saran, lihat panduan ini tentang strategi branching Git.
Siap melangkah melampaui dasar-dasar? Jalur keterampilan Git Fundamentals menawarkan konsep dan pengalaman praktik yang dibutuhkan untuk beralih dari pemula menjadi mahir.