Тема: Как синхронизировать данные MyTetra через интернет?
Здесь обсуждаем, как можно сделать систему синхронизации MyTetra через интернет.
По большому счету, нам нужно просто синхронизировать каталог data и пару файлов с конфигами.
Важно, что синхронизация должна быть атомарной - то есть, должны синхронизироваться все файлы на определенный момент. Частичная синхронизация файлов (например, при обыве связи) недопустима. По этой причине не подходит сервис DropBox, так как в нем возможны ситуации, когда одни файлы обновились, а другие еще не успели.
Предполагается, что для хранения данных будет использоваться какая-нибудь общеизвестная бесплатная служба или сервер. Вопросы безопасности и шифрации данных пока не рассматриваем.
Так как MyTetra - это персональный менеджер информации, то предполагается, что синхронизация происходит по следующему простому сценарию. При старте MyTetra, при выходе, при нажатии специальной кнопки "Synchro" происходит два действия:
1. Забираются изменения с сервера;
2. Заливатся локальные изменения на сервер.
В качестве службы хранения и синхронизации файлов я в данный момент рассматриваю следующие варианты:
1. SVN на SourceForge.net
Недостатки:
- Появление каталогов .svn во всех подкаталогах директории с данными.
- Неясно, как автоматически добавлять/удалять файлы, создаваемые в MyTetra, не пользуясь командами svn add, svn delete и т.д.
- Вроде как SVN не обеспечивает атомарность синхронизации
2. GIT на GitHub.com
http://github.com
Недостаток пока вижу один: неясно, как автоматически добавлять/удалять файлы, создаваемые в MyTetra, не пользуясь командами git add, git rm и т.д.
3. Rsync
Вроде как инструмент подходящий, но неясно, существует ли популярный бесплатный хостинг. Кто знает - высказываемся.
4. Duplicity
Вроде как инструмент подходящий, и говорят, что в качестве хостинга можно использовать gmail.com (видимо через протокол IMAP, не смог разобраться). Кто-нибудь пользовался этой штукой?
Недостаток - вопрос с кроссплатформенностью. MyTetra - кроссплатформенная программа, а Duplicity существует только под *nix. Имеется ли возможность сделать сборку Duplicity под cygwin? Один товарищ вроде собрал - http://www.alexdimarco.ca/blog/duplicit … ndows.html, но сборку свою не выложил.
5. Что-то еще?
Что вы думаете по поводу решения для синхронизации MyTetra? Какое решение может подойти?