Kódod védelme AI-katasztrófáktól: miért legyen a Jujutsu a biztonsági háló?
Amikor az AI bekavicsozza a kódolást: Fejlesztői rémálom
Mindenkivel előfordult már. Ülünk az AI coding tool előtt – legyen az Claude, Gemini vagy más LLM-alapú cucc –, és hirtelen baj van. Az AI félreérti a parancsot, és ráfut a git clean-re, eltüntetve az egyszemélyes kísérleteidet. Vagy elveszti a kontextust, törlődik a terminál, és felejt mindent félúton. Ha könyörögsz a helyreállításért, csak ezt kapod: "Nem tudom visszahozni, mert nincs commitolva."
Ez egyre gyakoribb, ahogy az AI segítőket használjuk. A kemény igazság: a hagyományos Git-trükkök nem bírják az AI kaotikus, gyors iterációit.
Mi a baj a sima Git-tel?
A Git remek, de tudatosan kell commitolni. Meg kell állni, és eldönteni, mikor mentsük el a munkát. Az AI viszont villámgyorsan iterál, és ez lyukat üt a rendszeren. Elfelejtkezel a commitról a flow közepén, vagy az AI visszafordít mindent, mielőtt bármit mentenél.
A legrosszabb? Az AI tönkreteszi a repót, és nincs mit visszahozni, mert sosem volt commit.
Itt jön a Jujutsu: Biztonsági háló az AI-korszakhoz
A Jujutsu – vagy röviden jj – egy version control rendszer, ami másképp gondolkodik. Nem vár commitra: minden parancs után automatikusan snapshotolja a working directory-t. Minden módosítás, kísérlet, véletlen törlés megmarad az operation logban.
Képzeld el Git-et paranoidszerű memóriával. A Git csak a tudatos commitokat követi, a jj pedig mindent rögzít a repóban, szándékost és szándékostalant egyaránt.
Gyors indítás: Nulla macera
A legjobb? Nem kell választani Git és jj között. Együtt élnek békében.
Létező Git repóban így állítod be:
jj git init --colocate
Ennyi. A jj most Git mellett dolgozik. Csapatod nem veszi észre – átlátszó számukra. Push-olsz Git-tel, mint mindig.
Hogyan működik a jj fejmodellje?
Kicsit más szavakat használ, mint a Git, de gyorsan belejön az ember:
@(a working set): Mint a Git working directory, de auto-snapshotolva- Commit ID-k:
[g-z]karakterek, nem hex, így különítsd el Git hashtól - Operation log: Teljes történet minden változásról
Így néz ki élőben:
$ jj
@ lrklqzxy panozzaj@gmail.com 2025-11-22 16:06:25 b76e8471
│ (no description set)
○ qppwxvzp panozzaj@gmail.com 2025-11-06 10:57:53 master
Add site perf audit document
Az @ a mostani, commitolatlan munkád. Minden változás unique ID-t kap. A karakteralapú ID-k könnyen megjegyezhetők, ellentétben a Git hexjeivel.
A varázs: Elveszett munka visszahozása
Most jön a lényeg. AI tönkretesz valamit? Nézd meg a teljes operation history-t:
jj obslog --revision @ --patch --limit 5
Ez mutatja az utolsó 5 műveletet diffekkel. Látod, mi változott, mikor, és visszahozod checkout-kal. Még ha az AI törölt, revertelt vagy összekutyult mindent, minden logolva van.
Miért kulcsfontosságú ez AI codingnál?
Az AI agentek másképp tick-takkoznak, mint mi emberek. Ők:
- Gyorsan módosítanak felügyelet nélkül
- Félreértelmezik a parancsokat, és váratlanul változtatnak
- Elvesztik a kontextust hosszú beszélgetésekben
- Véletlenül indítanak destruktív parancsokat
A Git emberközpontú commitokra épít. Az AI ezt felrúgja. A jj visszaadja a biztonságot: minden filesystem változás értékes és visszahozható.
Hogyan illeszd be a napi flow-ba
Így építed be AI sessionöidbe anélkül, hogy bármit megvariálnál:
- Session előtt: Tudd, hogy a jj mindent rögzít
- Session alatt: Hagyd szabadon dolgozni az AI-t – jj naplóz
- Ha baj van:
jj obslog-gal keresd meg a utolsó jó pontot - Takarítás után: Commitolj Git-be, mint szokás
A jj a Git alatt fut. Push-olsz GitHub-ra, GitLab-ra Git-tel. De alatta teljes háló véd.
Nulla overhead előnyök
A jj erőssége a minimális plusz munka:
- Könnyű telepítés
- Nincs változás Git flow-ban
- Csapat nem lát semmit
- Colocate miatt nincs duplikált tárhely
- Színes ID-k azonnal felismerhetők
Hátrány? Szinte semmi, főleg AI-projekteknél.
Mi jön még?
Az AI coding agentek beépülnek a munkába, ilyen toolok, mint a jj, nélkülözhetetlenek lesznek. Nem arról van szó, hogy elvesztesz-e munkát AI hiba miatt – hanem hogy tudod-e visszahozni.
Ha gyakran nyúlsz Claude Code-hoz, Gemini CLI-hez vagy ilyesmihez, telepítsd a jj-t. Biztosítás az elkerülhetetlen AI-balesetre.
A jövőbeli éned megköszöni, ha egy paranccsal visszahozod az órákat, ahelyett hogy néznéd, ahogy eltűnik a Git-black hole-ban.