LINUX.ORG.RU

Собственный аналог dropbox — git-annex assistant

 ,


0

5

Разработчик Debian Джой Хесс (Joey Hess) решил написать софт для автоматической синхронизации директорий через сеть с использованием системы контроля версий git.

Для этой цели он решил запросить у сообщества немного ресурсов, сравнимых с тем количеством денег, которые получают участники Google Summer of Code (он был ментором, поэтому это число ему и приглянулось). Так вот, сообщество ему уже дало столько, сколько он запрашивал, в первый же день, и сейчас есть шанс засыпать его деньгами.

Прототип под GNU/Linux уже есть (через inotify), в планах версия под Mac и в неопределённом будущем под Windows. Лицензия GPLv3.

>>> Подробности

★★★★★

Проверено: tazhate ()

Ответ на: комментарий от qnikst

Да и динамическая линковка (или плагины)

Хотите сказать, что дин-ки слинкованный git-annex + либы будет легче статического; или таки предлагаете на _роутер_ запихать еще пару веб-фрейморков, локальный cabal-репозиторий да лямбда-бота? // А жиды-то молодцы: оказывается у них, как и у принцесс, тоже есть свои паладины.

anonymous ()
Ответ на: комментарий от anonymous

Хотите сказать, что дин-ки слинкованный git-annex + либы будет легче статического;

не знаю не мерял.

или таки предлагаете на _роутер_ запихать еще пару веб-фрейморков, локальный cabal-репозиторий да лямбда-бота?

ни чём тут роутен, веб-фреймворк, кабал-репозиторий и лямбда-бот. Можно формулировать мысли по человечески?

qnikst ★★★★★ ()

Теперь для обойдённых внимание после сбора 20к$ будет порт под Windows. Сейчас есть прототип для GNU/Linux, запланированы порты на Mac и Android.

Evgueni ★★★★★ ()
Ответ на: комментарий от vyazovoi

Это не сколько синхонизация с git, это автоматическая синхронизация директорий между компьютерами. А то, что там именно git хэши держит мало кого волнует (ну разве что пользователей Windows)

Evgueni ★★★★★ ()
Ответ на: комментарий от Evgueni

Хорошо, плохо выразился, перефразирую: имхо кому надо было - у каждого уже свой велосипед для синхронизации с использованием git уже имеется. Правда я не знаю как они обрабатывают ту ситуацию, когда авто-мерджинг невозможен. Но т.к. я не работаю одновременно с двумя рабочими копиями да и авто-коммиты у меня делаются просто раз в час - мне это по барабану, велосипеды не для широких масс а для себя обычно делаются. То что появится (как я понял) универсальный инструмент для всех случаев, это хорошо, но ничего удивительного.

vyazovoi ★★ ()
Ответ на: комментарий от Evgueni

А ну с портом на андроид это уже какое-то готовое решение получится. Беру свои слова обратно - я представил себе простой скрипт, который мониторит изменения в файлах, делает авто-коммит и push в bare-репозиторий. Такой велосипед каждый сам себе может собрать.

vyazovoi ★★ ()
Ответ на: комментарий от vyazovoi

Файлы в репозиторий не складываются. Там лежат только хэши.

Evgueni ★★★★★ ()

Люблю git, заинтересовался, начал пробовать. Никак не пойму какой профит предоставляет эта тулза по сравнению с обычной работой с файлами + обычные традиционные бэкапы.
Я пока уловил только один профит - отслеживание количества копий между репозиториями, но ведь не для этого вся вот эта громадная сложная система создана?
Все туториалы и хинты на сайте прочитал, профит все-равно не ясен. Два юз-кейса на главной никак не описывают профит, чем оно лучше чем делать тоже самое файл-менеджером.
Может кто-нибудь объяснить? Просто технически тулза интересная, но вчера попытался запихнуть в нее архив фоток, сделать его бэкап на usb-винт и отправить несколько фоток на флешку - огреб кучу проблем и не понял профита перед тем, чтобы сделать бэкап rsync'ом и скопировать фотки на флешку вручную.

vyazovoi ★★ ()
Ответ на: комментарий от vyazovoi

Тем что это делается автоматом, как в случае dropbox, только тебе не нужно от dropbox (подставь google-drive или Яндекс-диск) зависеть.

В идеале, естественно.

Evgueni ★★★★★ ()
Ответ на: комментарий от Evgueni

Ммм, а я вот как раз ничего похожего на дропбокс не увидел. Судя по тьюторам на сайте - чтобы продублировать данные, например, со своего ноута на usb-диск, я должен сделать что-то типа git annex copy --to=usbdrive. Т.е. получается что операция ручная, а в dropbox и ко он автоматически дублирует все данные. ЧЯДНТ? Плиз, опишите парочку более интересных юз-кейсов, интересная штука вроде как.
Мне нравится и git, и bup, а тут ещё подобная тулза в копилку, я очень надеюсь что она все-таки окажется мега-полезной для меня как только я пойму как ей пользоваться =)

vyazovoi ★★ ()
Ответ на: комментарий от vyazovoi

Как я понял это и планируется сделать на основе git annex. Автор хотел за это 3 к$, но ему надавали больше, поэтому ещё будет порт на Android и возможно на Windows.

Evgueni ★★★★★ ()
Ответ на: комментарий от vyazovoi

Насколько я понял, assistant и будет мониторить через inotify необходимые директории и при необходимости вызывать git annex. Так что деньги пойдут именно на автоматизацию.

Array ()
Ответ на: комментарий от Evgueni

Ааа, понятно. Ну тогда здорово, но если честно меня больше интересует git-annex, чем аналог dropbox. В частности - у меня хоть и есть vds-ка, но я не хочу заливать туда свои данные. Мне больше нравится носить их с собой на носителях, желательно зашифрованными + делать бэкап. Мне понравилась идея ad-hoc синхронизации в духе git. Правда мне ещё и контроль изменений в файлах нужен (файлы по больше части - plain text), поэтому я все равно и так git использую.

vyazovoi ★★ ()
Ответ на: комментарий от Array

Да, я только теперь вижу что в загаловке фигурирует слово assistant. Тогда мне непонятно зачем для манипуляций с файлами вручную нужен git annex, ещё и без трекинга изменений в файлах (факт изменений фиксируются, а лога и диффов, как я понял, нет).

vyazovoi ★★ ()
Ответ на: комментарий от Evgueni

наверное правильнее не виртаульная, а облачная

Evgueni ★★★★★ ()
Ответ на: комментарий от Evgueni

Кажется я понял. Идея в том, чтобы данные лежали на разных устройствах (т.е. данных больше, чем может вместить одно устройство), но на каждом устройстве были полный списки файлов + возможность быстро увидеть где этот файл лежит, подключить нужное устройство и скопировать файл. Ну, впринципе, интересная идея. Жаль только мне не нужная - у меня 320 гб места на нетбуке а данных около 30гб.
Кстати, тех кто будет пробовать git-annex - не торопитесь загонять в него реальные файлы без бэкапа, работает довольно нестабильно:
- сделать бэкап в bup-бэкенд не вышло (bup самый свежий) - ошибка
- отправил единственную копию тестовых данные на флешку с vfat, при этом на флешке создал репо directory и шифрованием. annex перестал видеть эти данные + получить их будет довольно проблематично, т.к. они превратились в директорию безимянных файлов.
- создал ещё один репо типа директория, потом снес её и столкнулся с тем, что я не могу удалить этот репо из annex - remote в git удалил, а он все равно считает что данные в этой директории есть, но она сейчас недоступна.

Дальше даже не тестировал.

vyazovoi ★★ ()
Ответ на: комментарий от vyazovoi

Кроме того, мне не нравится, что работать, по сути, приходится с симлинками. Таким образом, например, навернутся скрипты, которые использую в своей работе file для определения типа файла, например.

vyazovoi ★★ ()
Ответ на: комментарий от vyazovoi

IMHO для рабочих файлов нужна просто система контроля версий встроенная в любимый текстовый редактор. Для бэкапа я использую сейчас pdumpfs запускаемую регулярно в кроне.

А возможность синхронизации данных вещь другого порядка. Сейчас у меня две постоянные точки + ноут и хочется чтобы часть данных были доступны везде и актуальны без моего присмотра, так как присматривать постоянно забываю.

Evgueni ★★★★★ ()

А может быть ещё кто-то прокомментирует эту фразу: «Another nice feature of git-annex is that it works seamlessly with files that are already present in the git repository, so handling a combination of giant and normal-sized files is easy».
Это из статьи про git-annex 2010-го года на lwn. Т.е. я так понимаю эту фразу можно часть данных хранить не в виде симлинков и хешей, а с полноценной историей в git. Но annex же вешает hook на commit и обрабатывает все файлы автоматически... wtf?

vyazovoi ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.