Существуют форматы, которые фактически скрывают файлы zip, например. docx или odt. Если я храню их непосредственно в управлении версиями, они обрабатываются как двоичные файлы. Мое идеальное решение было бы
- имеет крючок, который создает каталог
foo.docx/
для каждого файлаfoo.docx
перед фиксацией, распаковывая все файлы в него - необязательно, у вас есть крючок, который обновляет файлы xml
- имеет крючок, который воссоздает
foo.docx
из сохраненных файлов после обновления
Я не хочу, чтобы файлы docx были контролируемыми версиями. (Я знаю вопрос , где был предложен другой подход с пользовательским различием.)
Это выполнимо? Является ли это выполнимым с помощью меркуриального?
UPDATE:
Я знаю о крючках. Меня интересует специфика. Вот сеанс, демонстрирующий ожидаемое поведение.
> hg add foo.docx
> hg status
A foo.docx
> hg commit
> # Change foo.docx with external editor
> hg status
M foo.docx
> hg diff
+++ foo.docx/word/document.xml
- <w:t>An idea</w:t>
+ <w:t>A much better idea</w:t>