Как унисон решает, каким способом синхронизировать файл - PullRequest
3 голосов
/ 22 декабря 2010

Я использую унисон для синхронизации нескольких папок вместе.Не только 2 корня, но я думаю, что мой вопрос можно сделать так просто ...

Допустим, я синхронизирую каталоги A и B, используя унисон.Если я удалю файл X из каталога A, как Unison узнает, что делать?Должен ли он добавить X обратно к A из B или удалить X из B?

1 Ответ

5 голосов
/ 22 декабря 2010

Unison ведет запись содержимого каждого пути после каждой успешной синхронизации этого пути (т. Е. Запоминает содержимое в последний момент, когда они были одинаковыми в двух репликах).

Мы говоримчто путь обновляется (в некоторой реплике), если его текущее содержимое отличается от его содержимого в последний раз, когда он был успешно синхронизирован.Обратите внимание, что то, был ли обновлен путь, не имеет никакого отношения к его времени последнего изменения - Unison учитывает только содержимое при определении того, произошло ли обновление.Это означает, что касание файла без изменения его содержимого не будет распознаваться как обновление.Файл можно даже изменить несколько раз, а затем вернуть обратно к его исходному содержимому;до тех пор, пока Unison запускается только в конце этого процесса, обновление не будет распознано.

Другими словами: Unison знает, что вы удалили файл X, поскольку его больше нет на диске в A, онзнает, что следует удалить его из B.

...