Asosiy qismga oʻtish
Vibe Console

Claude Code va Codex uchun git worktree: amaliy qoʻllanma

Claude Code, Codex va boshqa AI agentlarni bir vaqtda alohida branchʼlarda konfliktsiz ishlatish uchun git worktree: buyruqlar, sozlash, xatolar va tozalash.

Nes

Nes

@nesdesignco

· 4 daqiqada oʻqiladi

Asosiy branch va ikkita git worktree sxemasi: ../atlas-auth da Claude Code, ../atlas-search da Codex ishlamoqda

Bitta repozitoriyda bittadan ortiq kod agenti ishlatsangiz, sizga git worktree kerak. U har bir agentga bir vaqtning oʻzida oʻz branchʼida, oʻz papkasida, boshqalarga xalaqit bermay ishlash imkonini beradi.

Git worktree nima?

Oddiy klonda bitta ishchi daraxt bor: bitta papka, bitta checkout qilingan branch. Worktree — oʻsha repozitoriyga ulangan, boshqa branch checkout qilingan qoʻshimcha ishchi papka. Barcha worktreeʼlar bitta .git tarixini boʻlishadi, shuning uchun istalganida qilingan commitʼlar boshqalarida darhol koʻrinadi, lekin fayllari alohida.

Agentlar uchun bu shuni anglatadi:

  • Claude Code feat/auth branchʼida ../atlas-auth ichidagi fayllarni tahrirlaydi
  • Codex feat/search branchʼida ../atlas-search ichidagi fayllarni tahrirlaydi
  • Siz esa main dagi asosiy papkada koʻrib chiqish va ilovani ishga tushirishni davom ettirasiz

Hech kim birovning oʻzgarishlarini ustidan yozib yubormaydi.

Har bir vazifa uchun worktree yarating

Asosiy repozitoriy papkangizdan:

# new branch + new folder next to the repo
git worktree add ../atlas-auth -b feat/auth
 
# another one, starting from a specific branch
git worktree add ../atlas-search -b feat/search origin/main
 
# see them all
git worktree list

Keyin har bir papkada agentni ishga tushiring:

cd ../atlas-auth && claude
cd ../atlas-search && codex

Worktree papkalarini vazifasiga qarab nomlang. Bir oydan keyin atlas-auth nimanidir anglatadi, wt2 esa hech narsani.

Yoki worktreeʼni Claude Codeʼning oʻzi yaratsin

Claude Codeʼning yangi versiyalari worktreeʼni siz uchun yarata oladi:

claude --worktree feature-auth   # or: claude -w feature-auth

Bu .claude/worktrees/feature-auth/ ostida worktree-feature-auth nomli yangi branchʼda worktree yaratadi va Claudeʼni uning ichida ishga tushiradi. Ikkinchi alohida seans uchun ikkinchi terminalda boshqa nom bilan yana ishga tushiring. Seans oʻrtasida Claudeʼdan «worktreeʼda ishla» deb soʻrashingiz ham mumkin.

Claude Code worktree hujjatlaridan bir nechta tafsilot:

  • Worktree fayllari asosiy checkoutʼda untracked boʻlib koʻrinmasligi uchun .claude/worktrees/ ni .gitignore ga qoʻshing.
  • Repozitoriyda kamida bitta commit boʻlishi kerak.
  • Chiqqaningizda Claude toza worktreeʼni olib tashlaydi (nomlangan boʻlsa, avval soʻraydi), oʻzgarishlari bor worktreeʼni saqlab qolish kerakmi — soʻraydi.
  • .worktreeinclude fayli har bir yangi worktreeʼga nusxalanadigan, git eʼtiborsiz qoldiradigan fayllarni (masalan, .env) sanab oʻtadi.

Vazifada faqat Claude Code ishlasa, claude --worktree dan foydalaning. Papka va branch nomini oʻzingiz tanlamoqchi boʻlsangiz yoki worktreeʼda Codex yoki boshqa agentni ishlatsangiz, oddiy git worktree add dan foydalaning.

Agent ishga tushishidan oldin har bir worktreeʼni tayyorlang

Yangi worktreeʼda faqat git kuzatadigan fayllar boʻladi. Uni agentga topshirishdan oldin:

  • Bogʻliqliklarni oʻrnating. node_modules, virtualenvʼlar va build papkalari umumiy emas. Har bir worktreeʼda npm install ni (yoki muqobilini) ishga tushiring. pnpm kabi umumiy omborli paket menejerlari buni tezlashtiradi.
  • Kuzatilmaydigan konfiguratsiyani nusxalang. .env fayllar va mahalliy sozlamalar odatda gitʼda eʼtiborsiz qoldiriladi, shuning uchun ilova ishlashi uchun keraklisini nusxalang. claude --worktree bilan ishlasangiz, ularni .worktreeinclude ga yozing.
  • Turli portlardan foydalaning. Ikkita dev server bir vaqtda 3000-portni tinglay olmaydi. Ikkinchisini boshqa portda ishga tushiring, masalan, PORT=3001 npm run dev.
  • Koʻrsatmalarni kuzatiladigan fayllar orqali boʻlishing. CLAUDE.md va AGENTS.md gitʼga commit qilinadi, shuning uchun har bir worktree ularni avtomatik oladi.

Koʻrib chiqish, merge va tozalash

Agent ishni tugatgach:

# in the worktree: check the work
git diff main...feat/auth
npm test
 
# in the main folder: merge
git merge feat/auth
 
# remove the worktree folder and its registration
git worktree remove ../atlas-auth
git branch -d feat/auth

Worktree papkasini qoʻlda oʻchirib yuborgan boʻlsangiz, eskirgan yozuvni tozalash uchun git worktree prune ni ishga tushiring.

Koʻp uchraydigan xatolar

  • «Branch is already checked out». Bitta branch bir vaqtda faqat bitta worktreeʼda checkout qilinishi mumkin. Har bir worktree uchun yangi branch yarating.
  • Unutilgan worktreeʼlar. Eski worktreeʼlar branchʼlarni tirik saqlaydi va diskda joy egallaydi. Vaqti-vaqti bilan git worktree list ni ishga tushiring.
  • Olib tashlashda commit qilinmagan oʻzgarishlar. Worktreeʼda oʻzgarishlar boʻlsa, git worktree remove rad etadi. Avval commit yoki stash qiling, ularni rostdan ham bekor qilmoqchi boʻlsangiz, --force dan foydalaning.
  • Asosiy papkani tahrirlayotgan agentlar. Har bir agentni repozitoriy ildizidan emas, oʻz worktree papkasi ichidan ishga tushiring.

Vibe Consoleʼda worktreeʼlar

Vibe Console agentlar ishlayotgan paytda worktreeʼlarni koʻz oldingizda tutadi:

  • Manba nazoratidagi (⌘⇧G) Worktreeʼlar tabi har bir worktreeʼni branchʼi bilan sanab oʻtadi, asosiysini va detached checkoutʼlarni belgilaydi.
  • Worktreeʼni terminalga sudrang — yoʻli joylanadi, keyin u yerda agentni ⌘K bilan ishga tushiring.
  • Worktreeʼni olib tashlash ish tugagach uni tozalaydi, mahalliy oʻzgarishlar qolgan boʻlsa, Majburan olib tashlash ni soʻraydi. Asosiy worktree himoyalangan.
  • Toʻr toʻqqiztagacha terminalni koʻrsatadi, shuning uchun har bir worktree agentining oʻz paneli boʻlishi mumkin. Qarang: agentlarni parallel ishlatish.

Worktreeʼlarni yuqoridagidek git worktree add yoki claude --worktree bilan yarating; ikkalasi ham roʻyxatda darhol paydo boʻladi.

Koʻp beriladigan savollar

Worktreeʼlar diskda koʻp joy egallaydimi?

Faqat checkout qilingan fayllar va ularga oʻrnatgan narsalaringiz uchun. Git tarixi umumiy.

Worktree ishlataymi yoki alohida klonlar?

Worktree. Ular bitta tarixni boʻlishadi, shuning uchun branchʼlar va commitʼlar hamma joyda darhol mavjud, tozalash esa bitta buyruq.

Ikkita agent bitta worktreeʼni boʻlisha oladimi?

Faqat ulardan koʻpi bilan bittasi fayllarni tahrirlasa. Faqat oʻqiydigan koʻrib chiquvchi agent kod yozayotgan agent bilan bitta worktreeʼni boʻlishishi mumkin.

14 kun bepul sinab koʻring: Vibe Consoleʼni yuklab oling.

Barcha agentlaringizni bitta oynaga yigʻing.

14 kun bepul. Soʻng oyiga $4.99 yoki yiliga $39.99.