# Codex worktree: atskira darbinė kopija antrai užduočiai

> Codex CLI 0.155.1 darbinė kopija: eksperimentinė worktree vėliavėlė, šaltinio HEAD, naujo aplanko tikrinimas, rezultato išsaugojimas ir saugus pašalinimas.

Source: https://ailoot.ai/blog/lt/codex-worktree-separate-task/
Canonical: https://ailoot.ai/blog/lt/codex-worktree-separate-task/
Language: lt
Publisher: Ailoot (https://ailoot.ai/)
Translation: guide-086
Revision: sha256-d5dbbe7be7e05762af8b2849fce7837fc907d87f4d5fd67243bd2eef55a04031


<div class="aside" data-semantic="key-takeaway" role="note" aria-label="Key takeaway for this section">

Pagrindinė mintis

Codex CLI 0.155.1 versijoje atskirą darbinę kopiją antrai užduočiai sukursite naudodami `codex --enable worktrees --worktree`. Ši funkcija yra eksperimentinė ir pagal numatytuosius nustatymus išjungta: jei jos dar neįjungėte, Codex atsisakys paleisti su `--worktree` be `--enable worktrees`. Kopija sukuriama iš naujausio pradinio projekto įrašo (HEAD), be neįrašytų pakeitimų, atjungtos HEAD būsenos — nepriskyrus pavadintos šakos.

</div>

Pavyzdžiui, naudodami Codex CLI pertvarkote vieną modulį, kai atsiranda antra užduotis: parašyti testus kitam moduliui. Atidaryti antrą seansą tame pačiame aplanke rizikinga: nesunku supainioti pirmos ir antros užduoties pakeitimus. Vėliavėlė `--worktree` sukuria atskirą to paties projekto aplanką antrai užduočiai, o pirmąjį palieka nepakeistą.

Praktiniai ištekliai, padedantys agentams dirbti lygiagrečiai: [Ailoot dokumentacija](https://ailoot.ai/docs/).



## Ką sukuria `--worktree` ir kokie failai patenka į kopiją

„Git“ terminijoje worktree yra papildomas darbinis aplankas, susietas su ta pačia saugykla: jis bendrina įrašų istoriją, bet diske turi atskirą failų rinkinį. Codex CLI 0.155.1 versijoje vėliavėlė `--worktree` naudoja šį „Git“ mechanizmą, kad naujas agento seansas būtų paleistas atskirame aplanke, o aplankas, kuriame jau vykdoma pirma užduotis, liktų nepakeistas.

Naujoje darbinėje kopijoje yra failai iš įrašo, į kurį paleidimo metu nurodo pradinio projekto HEAD — naujausio įrašo, o ne failo paskutinio įrašymo redaktoriuje momento. Ši komanda neperkelia neįrašytų pakeitimų ar naujų failų. Failo įrašymas redaktoriuje nėra tas pats, kas jo įrašymas į „Git“. Jei paleidžiant antrą užduotį pirmajame aplanke dar yra neįrašytų pakeitimų, jie liks tik tame aplanke.

Tai nėra visos saugyklos atsarginė kopija ar viso kompiuterio izoliacija. Tai antras to paties projekto darbinis aplankas, turintis prieigą prie tos pačios šakos ir įrašų istorijos. Apie panašų mechanizmą kitame įrankyje skaitykite [„Claude Code“ ir „git worktree“: lygiagrečios užduotys](https://ailoot.ai/blog/lt/claude-code-git-worktree/).

## Pasiruošimas: versija, projekto patikimumas ir įrašas

Prieš pradėdami patikrinkite tris dalykus. Komandas vykdykite pradinio projekto aplanke.

Pirmiausia patikrinkite Codex CLI versiją. Šios instrukcijos taikomos 0.155.1 versijai; kitose versijose atskirai patikrinkite, kaip veikia vėliavėlės:

```bash
codex --version
```

Antra, jums reikia vietinio „Git“ projekto, kurio HEAD nurodo į esamą įrašą — kitaip tariant, saugykloje turi būti bent vienas įrašas. Priešingu atveju nėra iš ko sukurti kopijos.

Trečia, šaltinis turi būti patikimas: jei projektas aiškiai pažymėtas kaip nepatikimas, paleidimas su `--worktree` nepavyks dar prieš sukuriant kopiją. Jei tik pradedate naudoti Codex CLI, pagrindinis pasiruošimas aptariamas straipsnyje [Codex (OpenAI): kas tai yra ir kaip pradėti](https://ailoot.ai/blog/lt/openai-codex-install/).

Iš anksto patikrinkite esamų šios saugyklos worktree sąrašą. Jį galėsite naudoti palyginimui po paleidimo:

```bash
git worktree list
```

Atskiri aplankai padeda užduotis laikyti atskirai. Bendrą darbo su agentu metodą rasite praktiniuose [Ailoot dokumentacijos](https://ailoot.ai/docs/) ištekliuose.



## Veiksmai: paleiskite atskirą kopiją antrai užduočiai

1.  ### Įjunkite eksperimentinę funkciją ir paleiskite seansą su atskira kopija

    Komandą vykdykite pradinio projekto aplanke, kuriame jau dirbate su pirma užduotimi.

    ```bash
    codex --enable worktrees --worktree
    ```

    Tikėtinas rezultatas: Codex iš dabartinio HEAD sukuria naują projekto darbinę kopiją ir joje atidaro agento seansą. Kopija yra atjungtos HEAD būsenos, jai nepriskirta pavadinta šaka. Taip ši vėliavėlė veikia 0.155.1 versijoje.

2.  ### Kitame terminale pradiniame projekte dar kartą pateikite worktree sąrašą

    ```bash
    git worktree list
    ```

    Tikėtinas rezultatas: išvestyje atsiranda papildoma eilutė su naujos kopijos keliu ir atjungtos HEAD žymekliu (arba šaka, jei ji yra). Šis sąrašas rodo, kad „Git“ užregistravo kopiją, bet nepatvirtina, kad agentas atliko užduotį. Norėdami įsitikinti, kad failai yra, atidarykite aplanką nurodytu keliu ir patikrinkite jo turinį.

## Kaip patikrinti rezultatą ir išsaugoti savo darbą

Kai antroji užduotis naujoje kopijoje baigta, rezultatą turite išsaugoti ir perkelti atskirai. Komanda `--worktree` nesujungia pakeitimų su pagrindine šaka ir automatiškai neperkelia rezultato. Kopija lieka atjungtos HEAD būsenos, todėl įrašo sukūrimas joje savaime nesukuria naujos šakos. Jei norite išsaugoti tuos įrašus, priskirkite juos šakai arba perkelkite į pagrindinį projektą prieš ištrindami kopijos aplanką.

Neištrinkite kopijos aplanko, kol neišsaugojote rezultato. Patikrinimas, ar darbinis aplankas švarus, nepakeičia reikiamų įrašų išsaugojimo: jie vis dar gali būti nepriskirti jokiai šakai.

Jei tuo pat metu atliekate užduotis skirtingais įrankiais, iš anksto suplanuokite, kaip neleisite joms trukdyti viena kitai. Dviejų agentų bendras darbas aptariamas straipsnyje [„Claude Code“ ir „Codex“ kartu](https://ailoot.ai/blog/lt/claude-code-codex-together/).

## Jei paleidimas nutrūko: kur rasti kopiją

Paleidimas su `--worktree` gali nepavykti dėl kelių priežasčių:

- funkcija nebuvo įjungta iš anksto, o paleidimo komandoje nėra `--enable worktrees`: Codex atsisakys paleisti su vėliavėle `--worktree`;
- esate ne tame aplanke arba nėra įrašo: jei dabartinis aplankas nėra „Git“ saugykla arba joje dar nėra jokių įrašų, nėra iš ko sukurti kopijos;
- projektas aiškiai pažymėtas kaip nepatikimas šaltinis: Codex atsisakys paleisti seansą su `--worktree`. Pirmiausia įsitikinkite, kad atidarėte tinkamą projektą. Automatiškai nekeiskite jo patikimumo būsenos.

Jei seansui nepavyko prisijungti prie naujai sukurtos kopijos — pavyzdžiui, procesas buvo nutrauktas — darbinis aplankas automatiškai neištrinamas. Pirmiausia patikrinkite worktree sąrašą ir, prieš ką nors ištrindami, įsitikinkite, kad šios kopijos vis dar nenaudoja joks Codex CLI seansas:

```bash
git worktree list
```

Atidarykite aplanką ir prieš jį ištrindami išsaugokite visus reikalingus pakeitimus. Kopija gali likti net ir tuo atveju, jei agento seanso paleisti nepavyko iki galo. Jei kopija yra, jos nebereikia ir esate tikri, kad ja nesinaudoja joks seansas, pašalinkite ją rankiniu būdu iš pradinės saugyklos naudodami `git worktree remove` ir nurodydami aplanko kelią. Nenaudokite `--force`: jei kopijoje yra neįrašytų ar nesekamų failų, komanda atsisakys ją ištrinti. Jei komanda atsisako, patikrinkite aplanko turinį neišjungdami apsaugos.

Atnaujinę Codex CLI, dar kartą patikrinkite `codex --version` ir pakartokite patikrą naudodami `git worktree list`: skirtingose versijose eksperimentinės vėliavėlės gali veikti nevienodai.





Daugiau išteklių ir įrankių: [Ailoot](https://ailoot.ai/).

## Klausimai ir atsakymai

### Ar antras worktree turės mano neišsaugotus ar neįrašytus pakeitimus?

Ne. Aprašytoje CLI versijoje jis pradeda nuo pradinės saugyklos HEAD įrašo. Neįrašyti pakeitimai ir nauji failai lieka pradiniame aplanke, todėl vien failo išsaugojimo redaktoriuje perkėlimui nepakanka.

### Ar švarų atskirtą worktree saugu ištrinti?

Švarus aplankas vis dar gali turėti įrašų be vardinės šakos. Pirmiausia juos išsaugokite ar perkelkite, patikrinkite, kad jokia sesija worktree nenaudoja, tada naudokite įprastą Git worktree šalinimą neapeidami apsaugų.


## Ailoot · Įmonė ir jos projektų portfelis

Ailoot remiasi sukaupta veiklos patirtimi, plačia klientų baze, stabiliomis paslaugomis ir nuolatine KPI kontrole.

Įmonė ir jos projektų portfelis: milijonai klientų; mėnesio pardavimai siekia milijardus.

Ailoot šią veiklos patirtį pritaiko teikdama API prieigą prie DI funkcijų klientų produktuose, agentuose, programose ir automatizavimo sprendimuose.
