4 poin oleh erish2150 2026-04-21 | 6 komentar | Bagikan ke WhatsApp

Ini adalah alat CLI yang mengotomatisasi workflow pengembangan paralel berbasis Git worktree.

Masalah yang diselesaikan

Saat mengerjakan beberapa tiket sekaligus tanpa berpindah branch, git worktree adalah pilihan yang bagus.
Namun, untuk dipakai dalam pekerjaan nyata ada banyak tugas berulang:

  • membuat worktree dan memberi nama branch → cukup satu baris parsec start PROJ-123
  • push, membuat PR, dan menautkan tiket → cukup satu baris parsec ship PROJ-123
  • memeriksa CI, merge, dan membersihkan worktree → cukup satu baris parsec merge PROJ-123

Pekerjaan berulang yang selama ini dilakukan setiap saat dipangkas menjadi masing-masing satu baris perintah.

Workflow inti

parsec start PROJ-123       # worktree + branch + integrasi tiket Jira  
# ... coding ...  
parsec ship PROJ-123        # push → buat PR (judul/tautan tiket disertakan otomatis)  
parsec ci PROJ-123          # tampilkan tabel status CI  
parsec merge PROJ-123       # tunggu CI → squash merge → pembersihan worktree otomatis  

Fitur utama

Integrasi tracker

  • Jira / GitHub Issues — otomatis memakai judul tiket, transisi status, board view, inbox
  • parsec ticket — melihat detail tiket dari terminal
  • parsec board — melihat sprint board Jira lewat CLI

Manajemen worktree

  • Integrasi shell — berpindah cd antarsesama worktree secara otomatis dengan parsec switch
  • Stacked PR — membangun rantai PR dengan opsi --on, rebase massal dengan stack sync
  • Undo — worktree yang terhapus karena kesalahan pun bisa dipulihkan dalam sekali jalan

Otomatisasi

  • Release — pembuatan tag + merge + GitHub Release + changelog secara otomatis
  • Mode output Human / JSON / Quiet — mudah diintegrasikan dengan skrip CI
  • 27 subcommand — start, list, status, ship, merge, ci, diff, sync, adopt, rename, dll.

Instalasi

cargo install git-parsec  

Atau Anda bisa mengunduh biner macOS / Linux dari GitHub Releases.

Cocok untuk

  • Anda yang mengerjakan banyak tiket sekaligus (pengembangan paralel berbasis worktree)
  • Anda yang lelah dengan pekerjaan berulang antara Jira + Git
  • Anda yang ingin mengurangi biaya context switching di monorepo
  • Anda yang ingin memberi lingkungan kerja terpisah untuk agen AI (Claude Code, dll.)

Tautan

Ditulis dengan Rust sehingga ringan, dan bisa langsung diterapkan ke repositori git yang sudah ada.
Masukan atau pertanyaan sangat diterima!

6 komentar

 
puddingman220 2026-04-22

Belakangan saya tertarik setelah membaca blog teknis tentang worktree paralel, tetapi sayang saya tidak bisa melihat detail implementasinya, jadi sepertinya saya harus mendalaminya lewat open source ini!

Di bawah ini adalah artikel blog yang saya baca.
https://medium.com/ajd-tech/…

 
erish2150 2026-04-22

Terima kasih! Tulisan blog yang Anda buat juga, bahkan jika dibaca secara ringan, terasa ditulis dengan sangat baik.
Kalau ada kesempatan, setelah Anda melihatnya, bila ada bagian yang kurang berkenan atau ingin diperbaiki, silakan ajukan issue atau kirim PR dengan santai!

 
shaun0927 2026-04-21

Menurut saya, parallel worktree adalah pendekatan dari work yang kotor -> clean nicely,
dan saya rasa ini akan menjadi cara pengembangan utama ke depannya.
Sepertinya repositori yang bagus.

 
erish2150 2026-04-21

Terima kasih :) Anda sudah menuliskan dengan baik bagian yang saya pikirkan.

 
bigcataroido 2026-04-21

Pendekatan yang memaksa pekerjaan paralel berbasis worktree ini cukup mengesankan.

Saya juga saat menangani beberapa tiket sekaligus
mengelolanya dengan kombinasi tmux + beberapa branch untuk memisahkan tiap lingkungan kerja,
tapi pada akhirnya ada terus masalah karena pengelolaan state menjadi kusut.

Mengikat lifecycle seperti parsec dengan start/ship/merge
justru sepertinya akan lebih membantu mengurangi kesalahan.

Ada yang saya penasaran,
saat beberapa PR terbuka secara bersamaan lalu urutan merge berubah
atau ketika muncul situasi yang membutuhkan rebase, bagaimana stack sync bekerja?

 
erish2150 2026-04-21

Terima kasih atas perhatiannya!

stack sync melakukan rebase berdasarkan hubungan induk-anak, dalam urutan topologis (topological order).

Cara kerja

parsec start PROJ-1                 # berbasis main  
parsec start PROJ-2 --on PROJ-1     # berbasis branch PROJ-1  
parsec start PROJ-3 --on PROJ-2     # berbasis branch PROJ-2  

parsec stack sync                   # rebase otomatis dalam urutan berikut  
# 1. PROJ-1 → rebase ke atas origin/main  
# 2. PROJ-2 → rebase ke atas branch PROJ-1  
# 3. PROJ-3 → rebase ke atas branch PROJ-2  

Strukturnya adalah menelusuri dari root dengan BFS sambil me-rebase setiap anak ke atas branch induknya. Jika main diperbarui, perubahan akan tersebar secara alami mulai dari root.

Jika urutan merge berubah

Saat ini desainnya berasumsi merge dilakukan dari bagian bawah stack (induk) terlebih dahulu. Jika PR di tengah di-merge lebih dulu, anak-anak dari node tersebut akan gagal pada stack sync berikutnya karena tidak bisa menemukan induknya. Dalam kasus ini,
base perlu ditetapkan ulang secara manual.

Saat terjadi konflik

Jika konflik terjadi selama rebase, hanya branch tersebut yang di-rollback dengan rebase --abort, lalu sisanya tetap dilanjutkan. Karena hasilnya ditampilkan dalam bentuk tabel yang menunjukkan tiket mana yang berhasil/gagal, Anda hanya perlu menyelesaikan yang gagal secara manual.