Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.06.22;
Скачать: [xml.tar.bz2];

Вниз

Определения и сохранение изменений файла   Найти похожие ветки 

 
Nucer   (2008-05-11 15:19) [0]

Есть файл (тип заранее неизвестен), необходимо отслеживать в нем изменения и сохранять их в каком-то формате для того, чтобы была возможность сделать откат на любую предыдущую версию. Существуют ли какие-нибудь уже разработанные алгоритмы, схемы? Просто сейчас появилась вот такая задача, и хотелось бы почитать что-нибудь по теме прежде чем приступить к изобретению велосипеда.


 
Nucer   (2008-05-11 15:22) [1]

К примеру есть копия исходного файла. Файл изменяется, сохраняем только изменения в каком-то виде, а не файл целиком. А в итоге имея копию оригинала и историю изменений всегда можем вернуть нужное состояние.


 
wicked ©   (2008-05-11 15:33) [2]

зависит от того, где и как это будет использоваться
может, стоит приглядеться к системам контроля версий?
тот же subversion


 
Nucer   (2008-05-12 10:43) [3]

Пишу что-то напободии Apple TimeMachine. Тот же subversion при работе с двоичными файлами копирует в хранилище полную версию.


 
Рамиль ©   (2008-05-12 10:48) [4]


> Nucer   (12.05.08 10:43) [3]

Все уже написано - теневые копии (Server 2003, Vista)
А что бы самому по изменениям... Ну, не знаю, текстовые еще можно. Но не может же программа знать форматы всех файлов?
А в теневых копиях вроде как по кластерам (но я не уверен, вроде читал как то мельком).


 
Kolan ©   (2008-05-12 10:49) [5]

> Тот же subversion при работе с двоичными файлами копирует
> в хранилище полную версию.

Неправда, он хранит различия.


 
Nucer   (2008-05-12 15:08) [6]

http://ru.wikipedia.org/wiki/Subversion

"Работа с двоичными файлами менее эффективна: каждая новая версия сохраняется в хранилище полностью."

---

Про теневые копии в Vista я знаю, но по некоторым причинам все равно делаю свой аналог (во-первых, для диплома, во-вторых, для XP).


 
Поп Гапон   (2008-05-12 16:13) [7]


> Nucer   (11.05.08 15:19)
>
> Есть файл (тип заранее неизвестен), необходимо отслеживать
> в нем изменения и сохранять их в каком-то формате для того,
>  чтобы была возможность сделать откат на любую предыдущую
> версию. Существуют ли какие-нибудь уже разработанные алгоритмы,
>  схемы? Просто сейчас появилась вот такая задача, и хотелось
> бы почитать что-нибудь по теме прежде чем приступить к изобретению
> велосипеда.


SVN

Или смотри технологии CDP
http://en.wikipedia.org/wiki/Continuous_data_protection


 
Kolan ©   (2008-05-12 17:20) [8]

> «Работа с двоичными файлами менее эффективна: каждая новая
> версия сохраняется в хранилище полностью.»

Ты хоть прокрути вверх то, что ты приводишь... Это про CVS

В вот «Subversion»
Одинаково эффективно работает как с текстовыми, так и с двоичными файлами.


 
Ketmar ©   (2008-05-12 17:34) [9]

> Kolan ©   (12.05.08 17:20) [8]
> Одинаково эффективно работает как с текстовыми, так и с
> двоичными файлами.

угу. одинаково бестолково.

автор, возьми git. у него отлично сделана библиотека для хранения изменений. собери её в dll и наслаждайся. к тому же у git код не инопланетянский, в отличие от svn.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.06.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.046 c
15-1210713441
^-k2-^
2008-05-14 01:17
2008.06.22
А я их знаю :)


2-1211898814
kazar
2008-05-27 18:33
2008.06.22
Разность 2 дат


15-1210165710
pasha_golub
2008-05-07 17:08
2008.06.22
CodeGear продалось Ebarcadero, вроде как :)


15-1210756224
User1
2008-05-14 13:10
2008.06.22
Как программно выключить сервер ?


2-1211624301
AlexeyMir
2008-05-24 14:18
2008.06.22
Показывалось окно или нет





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский