Ana içeriğe geç

kule undo

Görevin en yeni commit'ini çalışma klasöründe ve kopyada geri alır (undo).

Kullanım​

kule undo [OPTIONS] <TASK>

Açıklama​

Her kule commit bir kontrol noktası saklar: commit'in çalışma klasöründe yerine koyduğu şeyleri. kule undo bunları geri koyar; böylece çalışma klasörü commit'ten önceki hâline döner. Commit'in oluşturduğu dosyalar kaldırılır, değiştirdiği ya da sildiği dosyalar geri gelir ve kopya da aynı şekilde eski hâline getirilir.

Daha geriye gitmek için tekrar çalıştırın; geri alınacak bir şey kalmayana kadar her seferinde bir commit geri gider.

Kontrol noktaları görevin kendi deposunda (checkpoints/store.git altındaki git nesneleri, yanlarında kipleri ve zamanlarıyla), hiçbir sandbox'ın ulaşamadığı Kule'nin ev klasöründe durur. Her undo, görevin imzalı geçmişine kaydedilir.

Çalışma klasörü commit'ten sonra değiştiyse undo reddedilir (geri koyacağı yollarda): undo, birinin daha yeni işinin üzerine yazmış olurdu. O dosyaları commit'in bıraktığı hâle getirin ya da elle halledin.

Bir git deposunda, commit'in eklediği git nesneleri .git içinde kalır (git, referanssız nesneleri git gc ile kendisi temizler); dal hareketleri ve index geri konur.

Undo görev başına çalışır: yalnızca o görevin commit'lerini geri alır. Bir görev kule rm ile silindiğinde kontrol noktaları da gider.

Argümanlar​

AdZorunluAnlamı
TASKevetGörevin tam kimliği. Bkz. Bir göreve ad vermek.

Seçenekler​

SeçenekDeğerVarsayılanAnlamı
--homeyol~/.kuleKule'nin ev klasörü (ya da KULE_HOME). Bkz. genel seçenekler.

Örnekler​

Son commit'i geri alın:

$ kule undo 3efe1ca8
undid checkpoint 1 (3 changes)

Geri alınacak bir şey kalmadı:

$ kule undo 3efe1ca8
nothing to undo

Birkaç commit geriye gidin:

kule undo 3422f830 && kule undo 3422f830

Klasör o zamandan beri değiştiği için reddedildi:

$ kule undo 3422f830
kule: the workspace changed since Kule last saw it, at: README.md
hint: roll back, or rerun the task on the current workspace

Çıktı​

SatırAnlamı
undid checkpoint C (N changes)C kontrol noktalı commit geri alındı; N yol geri kondu.
nothing to undoGörevin geri alınacak commit'i kalmadı.

Hatalar ve çözümleri​

MesajNe yapmalı
kule: the workspace changed since Kule last saw it, at: <paths>Bu dosyalar commit'ten sonra gerçek klasörde değişti. Kule bunların üzerine yazmaz. Elle eski hâline getirin ya da commit'i yerinde bırakın.
kule: workspace <path> is gone …Gerçek klasör taşındı ya da silindi.
kule: an agent is at work in task <id> …Çalıştırmanın bitmesini bekleyin.

Uygulamada​

Timeline'daki en yeni commit üzerinde Undo (Mod+Shift+U, iki kez basın). Bkz. Timeline.

Ayrıca bakın​