Могу ли я надежно объединить два документа Microsoft Word с помощью Subversion?

У нас есть одновременное редактирование документов Word, и я хочу убедиться, что Subversion может обрабатывать объединение файлов .doc. Знаете ли вы, хорошо ли Subversion справляется с объединением документов Word?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
25
0
32 457
10

Ответы 10

Документы Word являются двоичными, поэтому нет. Достаточно ли осведомлены редакторы, чтобы их можно было научить использовать текстовый формат, такой как reStructuredText или LaTeX?

Lyx - отличная альтернатива обычному LaTex. В нем все еще есть все, что вы получаете, это то, что вы имеете в виду. (и это сложно для людей, которые используют WYSIWYG)) Но он ближе к WYSIWYG, но его базовый формат - это простой текст (почти прямой LaTex из моего беглого взгляда на него)

Lyndon White 26.10.2011 18:12

Нет: поскольку Word использует двоичный формат файлов, svn не может объединить файлы вообще.

Однако в самом Word есть функция слияния. Вы можете попробовать это, если вам нужно разрешить конфликт слияния.

Используйте утилиту слияния TortoiseSVN с подключаемым модулем xdocdiff для сравнения и объединения документов Office

Что для меня делает xdocdiff?

Chris Sutton 18.09.2008 09:16

Да, это мне тоже не помогло. Он якобы сравнивает (т.е. DIFF) словарные документы, но НЕ объединяет.

nasty pasty 09.09.2011 06:16

Я предполагаю, что в 2008 году это было предпочтительным решением, но в настоящее время TortoiseSVN должен иметь возможность вызывать сам MS Word, чтобы использовать его в качестве более удобного инструмента сравнения, верно?

Arnout Engelen 08.12.2011 22:59

Я бы добавил свойство svn: need-lock в документы Word, хранящиеся в Subversion, чтобы люди должны были заблокировать файл перед его редактированием. Это будет иметь большое значение для предотвращения конфликтов слияния.

Это то, чем мы занимаемся на работе, и это прекрасно работает. (У нас нет выбора относительно использования документов Word, поэтому это решение, а не изменение типа файла.)

Вы можете использовать TortoiseSVN в его установке по умолчанию для просмотра различий и выполнения слияния документов Word, он просто открывает Word и для этого использует собственный режим просмотра / изменений Word.

Обновлено: по умолчанию он также имеет различные возможности для форматов PowerPoint, Excel, OpenOffice и StarOffice. (Проверьте каталог TortoiseSVN \ Diff-Scripts).

Действительно, установка по умолчанию отлично справляется с использованием самого MS Word. Однако мне еще не удалось заставить его выполнять трехстороннее слияние - хотя кажется, что это должно быть возможно с использованием merge-doc.js, который входит в комплект. Как мне это вызвать?

Arnout Engelen 08.12.2011 23:09

На самом деле я понятия не имею, хотя первое, что нужно проверить, - это увидеть, может ли сам Word, использующий пользовательский интерфейс, выполнять трехстороннее различие. Может быть, с отслеживанием изменений и тому подобное (как два набора изменений). Еще не пробовал и не тестировал.

Daemin 09.12.2011 09:19

Вы также можете рассмотреть возможность использования небинарного формата, такого как Html.

Вы можете сохранять документы docx в формате XML «Flat OPC» с помощью Word (Сохранить как… XML-документ).

Таким образом вы получите простой текстовый файл.

Однако вам нужно следить за тем, чтобы идентификаторы отношений не были повреждены.

Например:

  • Пользователь A добавляет изображение (или гиперссылку, или комментарий, или сноску и т. д.) в документ и выполняет svn-коммит.

  • пользователь B (без обновления svn) добавляет одну из этих вещей в Word, сохраняет как xml, а затем выполняет обновление svn.

Пользователь Б вряд ли сможет открыть документ в Word на этом этапе, поэтому ему лучше не фиксировать его. Если вы можете контролировать это или готовы исправить проблемы вручную, все будет в порядке.

В противном случае вы могли бы рассмотреть что-то вроде моего программного обеспечения для совместной работы Plutext, которое уничтожает документ и редактирует его составляющие в Alfresco.

В настоящее время я работаю над плагином Word, который использует SharpSVN для подключения к репозиторию. В настоящее время довольно сложно создавать и выбирать новые документы, но это не должно быть большой проблемой.

Итак, когда у вас (наконец-то) есть документ в репозитории, его довольно просто зафиксировать и обновить из любой ревизии. Вы можете сравнивать и объединять эти файлы .docx с помощью встроенных в Word функций сравнения или слияния. На самом деле довольно просто. Надеюсь сделать это в ближайшие недели или около того.

Эта страница http://newgeeks.blogspot.com/2006/08/word-document-management-using-svn.html дает пошаговую информацию о том, как использовать totoiseSVN для управления версиями документа Microsoft Word.

Вы не можете использовать Subversion для автоматического объединения документов Word. Нет поддержки трехстороннего слияния (даже с Tortoise SVN). Если вы не привязаны к Word, вы можете использовать онлайн-редактор документов, например Редактор. Он поддерживает 3-стороннее объединение документов Wysiwyg. Также другие функции контроля версий (различие, разветвление и т. д.).

Другие вопросы по теме