it-swarm-eu.dev

Ukládání a obnovení zásobníku zpět - dobré nebo špatné?

Ve svrchované aplikaci pro stolní počítače s víceúrovňovým vrácením/opakováním (tj. Photoshop, Word atd.) By bylo možné uložit a obnovit historii vrácení souboru se samotným souborem jako dobrá nebo špatná věc? Moje počáteční reakce je „dobrá“, ale zjistil jsem, že občas držím Control + Z, dokud přestane fungovat, než se vrátím k předchozí verzi. Nějaké studie nebo zkušenosti s tím?

12
Robert Fraser

Jedním příkladem takové aplikace je IntelliJ IDEA (a některá další programovací prostředí). Kromě obvyklého externího projektu kontrola revize , IDEA má uživatelsky specifický místní historie , který ukládá revizi každého souboru při každém uložení (historie je uložena v domovském adresáři uživatele). Staré revize jsou standardně ukládány po dobu 3 aktivních pracovních dnů, po nichž jsou staré revize odstraněny. Ve spojení s funkcí automatického ukládání všech souborů každých několik sekund (moje preference je po nečinnosti po dobu 5 sekund), to znamená, že už nikdy nebudete muset přemýšlet o ukládání souborů a vždy můžete získat zpět stará data. Je to skutečný záchranář při programování. (Někdy je také používám, abych zjistil, jak mnoho hodin jsem pracoval na projektu, abych zaznamenal svou pracovní dobu, protože místní historie ukazuje datum a čas každé změny.)

Externí kontrola revizí je stále potřebná, ale pro jiné potřeby - tam budete provádět změny obvykle, když dostanete nějakou konzistentní práci, alespoň jednou za 1-2 hodiny, a je to také způsob, jak distribuovat vaše změny jinému týmu. a provádět zálohy. Místní historie na druhé straně je pro zotavení z neštěstí pár sekund nebo minut poté, co se to stalo.

Myslím si, že z podobné místní historie by prospělo mnoho jiných programů. Byl bych rád, kdyby to měl můj Office Suite, protože zásobník zpět/znovu a manuální uložení souborů jsou velmi primitivní způsoby, jak obnovit ztracená data (neumožňují selektivní obnovení a nepřežijí restartování programu). Také si pamatuji, že jsem viděl aplikaci pro úpravu obrázků (nepamatuji si jméno - myslím, že to bylo jen pro Mac), kde byly všechny úpravy provedeny jako transformace původního obrázku a kdykoli byste se mohli vrátit zpět a změnit některou z předchozí úpravy. Taková historie je tedy možná i při úpravách obrázků.

Nemyslím si, že bych si přál, aby historie byla uložena uvnitř editovaného souboru - jinak by to bylo velmi velké (revize každých pár sekund; moje místní historie pro programování projektů, na kterých jsem pracoval do jednoho roku, je 370 MB) a mohlo by to způsobit bezpečnostní problém únikem dat, o kterých jste si mysleli, že jste je odstranili - ale historie každého uživatele by byla skvělá.

7
Esko Luontola

pokaždé, když si přeji, aby photoshop nebo Word měly takovou funkčnost, na druhou stranu, jak jsi řekl, často tisknu control-z, dokud se nezastaví.

Dalším problémem je výkon. Představte si, že návrh dokumentu Word bude předáván a upravován týdny. Bylo by to obrovské! a trvat navždy načíst.

Dalším problémem je soukromí. Nechci, aby lidé viděli, jaké kroky jsem podnikl pro Malování obrázku ve Photoshopu, ani jaký byl můj předchozí návrh na tabuli.

Na závěr si myslím, že to může být hezké, ale musíte mít způsob, jak očistit historii kvůli výkonu a kvůli soukromí a možná také, pokud někdo stiskne ctrl-z, měli byste se zastavit, když narazíte na stav, kdy byl dokument, když to bylo byl naposledy otevřen a zeptal se, jestli si je jistý, že chce pokračovat.

7
Sruly

Zdá se mi, že nechcete zpět/znovu, ale verzování souborů, nebo kontrola revize . (Nevím o Photoshopu, ale Word tuto funkci má ve výchozím nastavení zakázanou).

7
peeles

Možná časový limit pro vrácení zpět, který je standardně nastaven na 5 minut (a může nebo nemusí být upravitelný časový limit)? Řešilo by to velmi platné obavy, které zde lidé mají, ohledně hodnoty zpětných dat o dny/týdny/měsíce později. A vyřešilo by to problém, který zde nastal náhodným zavřením aplikace a ztrátou dat zpět. A udržovalo by hodnotu přidržení kláves Ctrl + Z pro vymazání všech změn během „relace“ (kde nyní „relace“ znamená jakékoli použití, které má nečinnost najednou méně než 5 minut)

2
Chris Ledwith

To se mi moc líbí, pro malé i větší projekty.

Google Chrome, když obnovíte kartu, kterou jste omylem zavřeli, přijde s plnou historií zpět - což je samo o sobě úžasné).

Některé produktivní aplikace vytvářejí své artefakty ze stohu akcí, jako je 3D modelování, kde aplikujete operace v nekonečném zásobníku a pak mohou vstoupit a změnit dřívější operace a nechat tuto změnu šířit ze zásobníku do aktuálního modifikátoru. Formát souboru je pak založen na toku akcí, nikoli na konečném výsledku.

Jakákoli aplikace, u které není zřejmé „publikovat“ finální nebo veřejnou verzi artefaktu, by však představovala velké riziko. Jako kdybyste odeslali dokument Word s úplnou historií změn, které by urazily příjemce (jako nabídka, kde jste změnili jméno klienta od jiného klienta nebo co).

1
Oskar Duveborn

Osobně si myslím, že je to špatné. Lepší by byl systém pro správu verzí. Nemyslím si, že uživatelé očekávají, že to bude fungovat zpět. Nechápu, jak si pamatují, co je v jejich zpětném zásobníku několik dní. A potenciálně to může zabrat hodně místa na disku a paměti v aplikaci. Myslím, že uživatelé se v podstatě nikdy nezbaví dat. Jak se vypořádat s případy použití, kdy uživatelé chtějí uvolnit místo na pevném disku, protože jim dochází málo?

1
Erik Engheim

Mám pocit, že toto je nesprávný nástroj pro tuto práci. Zpět a Znovu se týká akcí v tomto procesu, takže mohu akci zrušit/znovu provést dříve, než ji uložím a přejdu dál. Ukládání napříč relacemi se mi zdá být jiným požadavkem, verzování je spíše styl. Vidím, že existuje místo pro udržení redo stacku s uloženou verzí souboru/aplikace, což znamená, že byste mohli otevřít verzi a okamžitě zrušit předchozí akce, ale když začnete dělat více akcí, ztratíte to - stack se restartuje.

Vidím, že by to bylo užitečné - někdy vidím, že se mi to bude líbit - ale stále si myslím, že to není správné využití tohoto zařízení.

0
Schroedingers Cat