Git worktree: birden fazla yapay zeka ajanını çakışmadan çalıştırmanın temeli

Ajanların paralel çalışınca birbirinin işini eziyor. Git worktree bunu iki komutta çözer. İşte nasıl kullanacağın.

Aynı repo üzerinde iki ajan başlatıyorsun. Biri package.json dosyasını düzenliyor, diğeri de. Otuz saniye sonra kodun, kimsenin merge edemeyeceği bir hale geliyor.

Bu, ajanlarındaki bir bug değil. Sorun, hepsinin aynı klasörde çalışması.

Çözüm, Git'in yıllardır içinde olan ama neredeyse kimsenin kullanmadığı bir araç: git worktree.

Sorun: 3 ajan, 1 repo, imkansız bir merge

Normal bir Git reposu tek bir klasördür ve aynı anda tek bir branch checkout edilir. main üzerinde çalışırsın, branch değiştirirsin, bütün klasör baştan aşağı değişir.

Şimdi o klasörün içine üç otonom ajan koy. Aynı anda yazıyorlar. A ajanı bir dosya oluşturuyor, B ajanı temiz başlamak için git checkout çalıştırıyor ve A'nın yarım kalan işini siliyor. Sonunda elinde yarım yazılmış dosyalar, bozulmuş bir index ve kendin kodlasan harcayacağından daha uzun sürede çözeceğin çakışmalar kalıyor.

Paralellik, ancak ajanlar birbirine dokunmazsa sana zaman kazandırır.

Git worktree nedir

Worktree, aynı repoya bağlı ikinci bir çalışma klasörüdür.

Aynı history, aynı remote, ama her worktree'nin kendi checkout edilmiş branch'i ve diskte kendi dosyaları var. Yan yana beş tane tutabilirsin, her biri farklı bir branch üzerinde, birbirinin ayağına dolanmadan.

Tek bir .git, birden fazla çalışma alanı. Hepsi bu.

Pratikte ajan başına bir worktree

Kurulum şöyle. Reponun içinden:

git worktree add ../project-auth -b feature/auth
git worktree add ../project-billing -b feature/billing
git worktree add ../project-export -b feature/export

Az önce üç klasör oluşturdun, her biri kendi branch'inde. Her birinde bir ajan başlatıyorsun:

cd ../project-auth && claude
cd ../project-billing && codex

Her ajanın kendi klasörü, kendi branch'i, kendi dosyaları var. Auth ajanı, billing ajanının ne yaptığını asla görmeyecek. Çakışma imkansız.

Bir özellik hazır olunca branch'ini gözden geçirip merge ediyorsun. Sonra temizliyorsun:

git worktree remove ../project-auth

Klasör gidiyor, branch history'nde kalıyor. Tertemiz.

Bilmen gereken 3 tuzak

Birinci tuzak: ortak merkezi dosya. İki özellik de aynı routes.ts dosyasına ya da aynı veritabanı şemasına dokunmak zorundaysa, worktree seni kurtarmaz, merge sırasında çakışmayı yine yersin. Herkesin paylaştığı dosyalara bir ajan dokunur, diğerleri ya bekler ya da etrafından dolanır.

İkincisi: yoldan çıkan branch'ler. Ajanların çalışırken main ilerlemeye devam ediyor. Üç gün sonra branch'lerin geride kalıyor ve merge etmek can sıkıcı bir hal alıyor. Erken ve sık rebase yap, ya da oturumları kısa tut.

Üçüncüsü: unutulan temizlik. Her worktree diskinde gerçek bir klasör. Günde on tane açıp hiç temizlemezsen üst klasörün okunamaz hale geliyor. git worktree list ortalıkta ne varsa gösterir, git worktree prune ölü olanları siler.

Asıl soru: beş klasörü kim takip ediyor?

Worktree dosya çakışmalarını çözer. Zihinsel yükünü çözmez.

Beş klasörün, beş ajanın, beş terminalin var. Hangisi senin incelemeni bekliyor? Hangisi sen başka yere bakarken on dakika önce bitti? Hangisi çöktü?

İşte terminalde kalırsan, ajan başına bir worktree yaklaşımının sınırına burada toslarsın. Teknik çakışmayı çözdün, ama takip edeceğin pencere sayısını katladın.

AgentsRoom her ajanı, hangi worktree'de çalışırsa çalışsın, durumu ve rengiyle birlikte bir kart üzerine yerleştirir. Bekleyen bir ajan kırmızıya döner ve sana haber verir. Worktree'lerin üzerine kurulan tam yöntem için kontrolü kaybetmeden 3 ila 8 ajanı nasıl paralel çalıştıracağını oku.

Akılda kalması gereken

Bir ajan, bir worktree, bir branch. Ciddi çok ajanlı çalışmanın temel kuralı bu.

Komutlar üç satıra sığıyor, faydası anında geliyor: ajanların birbirinin işini ezmeyi bırakıyor. Üstüne hangisinin sana ihtiyacı olduğunu söyleyen bir görünüm ekle, işte o zaman aklını kaçırmadan beş işi gerçekten paralel yürütebilirsin.

AgentsRoom'u Indirin

Claude ajanlarinizi tum projelerinizde tek bir pencereden calistirin.

ÜcretsizAgentsRoom'u Indir

Yardımcı uygulama: hareket halindeyken ajanlarinizi izleyin

Claude, Codex, Gemini CLI veya başka bir AI sağlayıcı kullan.

Uzantıyı yükleyin
Chrome Web Store

Hataları ve istekleri doğrudan genel backlogunuza gönderin.

AgentsRoom'a kısa bir bakış.

Çoklu proje
Çoklu sağlayıcı
Çoklu ajan
Canlı durum
Diff ve commit
Mobil uygulama
Canlı önizleme
Ajan ekipleri
Tarayıcı otomasyonu
Backlog odaklı dev
Prompt kütüphanesi
Beceri kütüphanesi
Tüm özellikleri gör