Сохранение & восстановить стопку отмены - хорошо или плохо?

В современном настольном приложении с многоуровневым отмене /повторением (например, Photoshop, Word и т. д.) можно было бы сохранить и восстановить историю отмены файла с самим файлом, если это будет хорошо или плохо? Моя первоначальная реакция «хорошая», однако я обнаружил, что иногда я удерживаю Control + Z, пока не перестанет работать, чтобы вернуться к предыдущей версии. Любые исследования или опыт с этим?

12 голосов | спросил Robert Fraser 10 AM000000100000003631 2010, 10:38:36

7 ответов


7

Одним из примеров такого приложения является IntelliJ IDEA (и некоторые другие среды программирования). В дополнение к обычному внешнему внешнему контролю версий IDEA имеет пользовательский локальная история , которая сохраняет ревизию каждого файла при каждом сохранении (история хранится внутри пользовательской домашний каталог). Старые версии сохраняются по умолчанию в течение 3 активных рабочих дней, после чего старые изменения удаляются. В сочетании с функцией автоматического сохранения всех файлов каждые несколько секунд (мои предпочтения после простоя в течение 5 секунд), это означает, что вам никогда не придется думать о сохранении файлов, и вы всегда можете вернуть старые данные. Это настоящий спасатель при программировании. (Иногда я также использую его, чтобы узнать, сколько часов я работал над проектом, чтобы записать мои рабочие часы, потому что местная история показывает дату и время каждого изменения.)

Внешний контроль над версиями по-прежнему необходим, но для других нужд - там вы будете совершать изменения, как правило, когда вы выполняете какую-то непротиворечивую работу, по крайней мере один раз каждые 1-2 часа, а также способ распространения ваших изменений другим членам команды и создавать резервные копии. Местная история, с другой стороны, предназначена для восстановления после неудач через несколько секунд или минут после ее возникновения.

Я думаю, что многие другие программы выиграют от аналогичной местной истории. Мне бы это понравилось, если бы у меня был пакет Office Suite, потому что стек отменить /повторить и вручную сохранить файлы - это очень примитивные способы восстановления потерянных данных (они не позволяют выборочного восстановления, и они не выживают при перезапуске программы). Я также помню, что видел приложение для редактирования изображений (я не помню названия - я думаю, что это было только для Mac), где все изменения были сделаны как преобразования исходной картинки, и вы могли в любое время вернуться к изменению любого из предыдущие изменения. Таким образом, такая история возможна даже при редактировании изображений.

Я не думаю, что мне хотелось бы, чтобы история хранилась в редактируемом файле, иначе она будет очень большой (ревизия каждые две секунды, моя местная история для проектов программирования, над которыми я работал в течение одного год 370 МБ), и это может вызвать проблему безопасности, утечка данных, которые, по вашему мнению, вы удалили, но история каждого пользователя была бы большой.

ответил Esko Luontola 10 PM000000110000000631 2010, 23:28:06
7

время от времени я хочу, чтобы Photoshop или слово имели такую ​​функциональность. С другой стороны, как вы сказали, я часто нажимаю control-z, пока он не остановится.

Другая проблема - производительность. Подумайте о том, что документ с текстом проекта передается и редактируется в течение нескольких недель. Это было бы огромно! и навсегда загружать.

Еще одна проблема - конфиденциальность. Я не хочу, чтобы люди видели, какие шаги я предпринял, чтобы нарисовать картинку в Photoshop, или то, что было моим предыдущим предложением на доске.

В заключение, я думаю, что это может быть приятно, но вам нужно будет иметь способ очистить историю ради производительности и конфиденциальности, а также, возможно, если человек нажмет ctrl-z, вы должны остановиться, когда вы нажмете на состояние документ когда он был в последний раз открыт и спросил, уверен ли он, что он хочет продолжить.

ответил Sruly 10 AM000000110000005431 2010, 11:18:54
6

Мне кажется, что вы не хотите отменять /повторять, но управлять версиями файлов, или контроль версий . (Я не знаю о Photoshop, но Word имеет эту функцию, по умолчанию отключен).

ответил peeles 10 PM00000080000000131 2010, 20:22:01
2

Возможно, тайм-аут отмены, который по умолчанию составляет 5 минут (и может быть или не быть редактируемой длиной таймаута)? Он рассмотрит очень обоснованные опасения, что люди здесь имеют значение для отмены дней данных /недель /месяцев позже. И он затронет проблему, вызванную случайным закрытием приложения и потерянием данных отмены. И сохранит значение удержания Ctrl + Z, чтобы очистить все изменения во время «сеанса» (где теперь «сеанс» означает любое использование, которое имеет неактивность менее 5 минут за раз)

ответил Chris Ledwith 8 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowSat, 08 Sep 2012 23:07:25 +0400 2012, 23:07:25
1

Лично я думаю, что это плохо. Система управления версиями была бы лучше для этого. Я не думаю, что пользователи ожидают отменить эту работу. Я не понимаю, как они могут вспомнить, что находится в их откатном стеке несколько дней назад. И потенциально это может съесть много дискового пространства и памяти в вашем приложении. Я имею в виду, что пользователи по существу никогда не избавляются от данных. Как вы справляетесь с ситуациями использования, когда пользователи хотят освободить место на своем жестком диске, потому что они работают на низком уровне?

ответил Adam Smith 19 PM00000070000000731 2010, 19:16:07
1

Мне это очень нравится, для небольших и крупных проектов.

Google Chrome при восстановлении закладки, которую вы случайно закрыли, придет с полной историей предыстории - что является удивительным по своему усмотрению.

Некоторые продуктивные приложения создают свои артефакты из стека действий, таких как 3D-моделирование, где вы применяете операции в бесконечном стеке, а затем можете входить и изменять более ранние операции, и это изменение распространяется через стек до текущего модификатора. Формат файла затем основывается на потоке действий, а не на конечном результате.

Любое приложение, в котором не очевидно «публиковать» окончательную или общедоступную версию артефакта, будет сопряжено с большим риском. Например, если вы отправляете текстовый документ с полной историей изменений, которые могут оскорбить получателя (например, предложение, в котором вы изменили имя клиента от другого клиента или еще чего-то).

ответил Oskar Duveborn 15 +04002011-10-15T19:45:55+04:00312011bEurope/MoscowSat, 15 Oct 2011 19:45:55 +0400 2011, 19:45:55
0

Я чувствую, что это неправильный инструмент для работы. Undo and Redo - это действия в этом процессе, поэтому я могу отменить /повторить действие, прежде чем сохранять и перемещаться. Сохранение в течение сеансов кажется мне другим требованием, управление версиями - это скорее стиль. Я вижу, что есть место для хранения повторного стека с сохраненной версией файла /приложения, что означает, что вы можете открыть версию и немедленно отменить предыдущие действия, но когда вы начнете делать больше действий, вы потеряете это - стек перезапускается.

Я вижу, что это было бы полезно - я могу видеть несколько раз, что мне это нравится, но я все же думаю, что это не правильное использование этого объекта.

ответил Schroedingers Cat 15 +04002011-10-15T21:13:34+04:00312011bEurope/MoscowSat, 15 Oct 2011 21:13:34 +0400 2011, 21:13:34

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132