Git Worktree
Terakhir diperbarui
git worktree memungkinkan satu repositori punya beberapa direktori kerja sekaligus, masing-masing di branch yang berbeda. Daripada melakukan stash pada pekerjaanmu untuk pindah branch, kamu checkout branch lain di folder terpisah: meninjau PR, mengerjakan hotfix, atau build satu branch sambil mengedit branch lain, semuanya berbagi riwayat .git yang sama.
Coba perintah-perintah ini di playground terminal: shell sungguhan di browsermu, tanpa perlu instalasi.
Sintaks
| Perintah | Fungsinya |
|---|---|
git worktree add ../hotfix hotfix | Checkout hotfix di folder sebelah |
git worktree add -b new ../new | Membuat branch beserta worktree-nya |
git worktree list | Menampilkan semua worktree beserta branch-nya |
git worktree remove ../hotfix | Menghapus worktree |
git worktree prune | Membersihkan entri worktree yang usang |
Contoh langkah demi langkah
Perbaiki bug di main tanpa mengganggu feature branch-mu.
| Langkah | Perintah | Hasil |
|---|---|---|
| 1 | git worktree add ../fix main | main di-checkout di ../fix |
| 2 | Perbaiki dan commit di ../fix | Hotfix di main selesai |
| 3 | git worktree remove ../fix | Bersihkan; feature branch tidak tersentuh |
Pertanyaan seputar git worktree
Apa itu git worktree?
.git, jadi kamu tidak perlu stash atau clone untuk mengerjakan dua branch bersamaan.Bagaimana cara menambahkan worktree?
git worktree add <path> <branch>, misalnya git worktree add ../hotfix hotfix. Git melakukan checkout branch itu ke folder baru. Untuk sekaligus membuat branch baru, pakai git worktree add -b <newbranch> <path>.Kapan sebaiknya memakai worktree daripada pindah branch?
Pakai saat pindah branch akan merepotkan: kamu punya pekerjaan yang belum di-commit, build panjang yang tidak ingin kamu hentikan, atau kamu perlu membandingkan dua branch berdampingan. Worktree memberimu branch lain di foldernya sendiri tanpa menyentuh branch saat ini.
Bagaimana cara menghapus worktree?
git worktree remove <path>. Kalau folder-nya sudah dihapus secara manual, jalankan git worktree prune untuk membersihkan catatan yang usang. Kamu tidak bisa menghapus worktree utama (folder repo asli), hanya worktree tambahan yang kamu buat.Bisakah saya berlatih ini secara online?
git worktree di shell sungguhan di browsermu, tanpa perlu instalasi. Kursus Git interaktif gratis dari Coddy juga membahas alur kerja dengan branch langkah demi langkah.