Суммировать схему Jens в псевдо диаграмму изменения состояний / база правил:
// never throttle
// slow the bots
// humans still welcome
// a correct guess from a bot
Наблюдения:
Эти наблюдения покрывают другой тип нападения тем, Вы пытаетесь противостоять.
Из статьи OpenXML в Википедии :
Файл Office Open XML - это ZIP-совместимый пакет OPC, содержащий XML-документы и другие ресурсы.
Другими словами, файлы OpenXML на самом деле представляют собой zip-файлы с файлами XML в них. Сжатие или шифрование «скремблирует» данные, саботируя способность Subversion генерировать дельты между версиями. Это не связано с svn: mimetype
. Subversion считает все файлы двоичными при создании дельт.
В голландском языке есть поговорка «измерение - это знание». На приведенном ниже графике показаны результаты эксперимента, в котором я импортировал документ OpenXML размером 500 КБ в репозиторий SVN 1.6 (версия 1). Затем я добавил абзац из другого документа, сохранил и зафиксировал. Это было повторено 5 раз (ревизии 2–6).
Как видите, фиксация новой ревизии docx, которая просто добавляет абзац, будет стоить вам около 150 КБ дискового пространства. Это по-прежнему намного эффективнее, чем просто хранить копию каждой ревизии без помощи системы контроля версий.
Я также повторил эксперимент с отдельным тестовым репозиторием, распаковав каждую ревизию docx. Как видите, хранение ревизий документа было бы намного эффективнее, если бы оно не было сжатым. Также интересно видеть, что собственное сжатие данных subversion примерно так же эффективно, как zip . Сохранение первой ревизии несжатого docx в Subversion занимает примерно то же место, что и исходный docx.
YMMV.
Хранение редакций документа было бы намного эффективнее, если бы оно не было сжатым. Также интересно видеть, что собственное сжатие данных subversion примерно так же эффективно, как zip . Сохранение первой ревизии несжатого docx в Subversion занимает примерно то же место, что и исходный docx.YMMV.
Хранение редакций документа было бы намного эффективнее, если бы оно не было сжатым. Также интересно видеть, что собственное сжатие данных subversion примерно так же эффективно, как zip . Сохранение первой ревизии несжатого docx в Subversion занимает примерно то же место, что и исходный docx.YMMV.
Subversion довольно хорошо обрабатывает двоичные файлы. Он не сохраняет полную копию для каждой фиксации, а только эффективную двоичную разницу.
См. FAQ об этом.
К сожалению, в настоящее время вы не можете сделать это с помощью Subversion, но вокруг этого было некоторое обсуждение:
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=651443
Вы когда-нибудь пытались открыть файл OpenXML в текстовом редакторе?
Короче говоря: это не текст, он по-прежнему двоичный. Так что нет, вы не можете заставить Subversion справиться с этим иначе.