Re[2]: [oodisc] Множественные резервные копии ?

Serge Skorokhodov suralis-s на mtu-net.ru
Сб Дек 3 16:05:08 MSK 2005


>> Пожалуйста, вдруг поможет. В CVS у меня так и не получилось
>> нормально загнать, сам пользуюсь встроенным контролем версий.

> Как вы пытались это сделать?

Если я что-нибудь в чем-нибудь понимаю, cvs (да и не только cvs:)
не поддерживает merge двоичных форматов. Поэтому параллельная
работа над файлом невозможна:( В смысле, если _два_ человека
изменят свои рабочие копии, то cvs/rcs не смогут выполнить не
только автоматический merge независимо измененных частей, но даже
не смогут помочь сделать это вручную.

Работать с двоичными файлами можно только по очереди, через
"жесткие" локи. Если хотите работать одновременно --- только
через text-based форматы.

Т.е. если сохранять не сжатый файл-документ, а исходное дерево
xml, или написать модуль, нетривиально сравнивающий
xml-представление сжатых документов, то можно. Но тут
подстерегает множество неприятных технических проблем, поскольку,
в отличии от исходного кода на каком-либо языке программирования,
формат документов не предназначался для этого:( Опыт показывает,
что если открыть документ и просто сохранить его, то возникает
множество "бессмысленных" изменений. Поэтому обычный diff тут "не
катит":(

А вот системы внутреннего контроля версий, что в MSO, что в OOo,
сравнивают в документах не все, более того, они обычно хранят
историю сделанных изменений и сравнивают уже ее.

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

> Например, Алена и Вася оба имеют одинаковую последнюю
> сохраненную у Васи версию R и начинают работать над ней. После
> этого Алена отсылает Васе свою новую версию A, который к этому
> времени имеет свою версию B. Теперь у Васи задача -- сохранить
> свою B как R1, чужую A как R2, после этого сравнить свою B с
> чужой сохраненной А и с учетом этого получить новую версию B.

> Не очень понятно, как в свой архив воткнуть чужой файл.
> Или есть другое решение?

Мне приходилось пользоваться встроенным контролем версий, хотя и
в MSO. Тогда это делалось так: кто-то один был "мейнтейнером"
документа, и, когда очередная версия была готова, он сохранял ее
как отдельный документ и рассылал команде.

Получив правку и отзывы и "утряся" их с командой, изменение из
разрозненных копий "сливались" в текущую версию документа,
которая сохранялась, как новая версия. Далее цикл повторялся.

Т.е. была такая master copy, она была одна и хозяин у нее был
один. А работа велась над копиями ее версий. Думаю, что OOo
должен поддерживать такую организацию совместной работы.

В MSO вроде есть какой-то инструментарий для совместной работы,
он даже активно рекламируется Microsoft, но я с ним
непосредственно не сталкивался. Хотя, наверное, стоило бы
присмотреться, хотя бы для обдумывания путей развития OOo;)

-- 
Best regards,
 Serge Skorokhodov



Подробная информация о списке рассылки Oo-discuss