В сердце нынешнего, текстового CVS'а находится diff - очень умный алгоритм сравнения текстов. Увидев файл до исправления и после он угадывает, какие именно строки были изменены. В предположении, что в текст было либо что-то вставлено, либо что-то удалено. (Разумеется, алгоритм diff можно обмануть, если взять длинный текст и поменять местами его половины, но это уже другая история.)
Думаю, что в недалёком будущем любой файл будет сопровождаться историей его изменения в некотором стандартном формате - это позволит делать "бесконечное Undo" даже после записи файла. Пример: работа в издательских системах. Фотограф откадрировал фотографию и наложил на неё некоторую последовательность фильтров. А редактору она не понравилась - взял да и отмотал назад, по-другому откадрировал, наложил свои фильтры. Да мало ли...
Используя такие "истории изменения" можно сделать ещё более надёжную и унифицированную CVS, которая будет свободна от необходимости угадывать.
no subject
Date: 2005-02-08 10:42 am (UTC)Думаю, что в недалёком будущем любой файл будет сопровождаться историей его изменения в некотором стандартном формате - это позволит делать "бесконечное Undo" даже после записи файла. Пример: работа в издательских системах. Фотограф откадрировал фотографию и наложил на неё некоторую последовательность фильтров. А редактору она не понравилась - взял да и отмотал назад, по-другому откадрировал, наложил свои фильтры. Да мало ли...
Используя такие "истории изменения" можно сделать ещё более надёжную и унифицированную CVS, которая будет свободна от необходимости угадывать.