使用TortoiseSVN合并Microsoft Word文档

8
TortoiseSVN有一个不错的VBA脚本,可以使用Word内置的更改跟踪功能合并Microsoft Word文档。这样,在我将分支中的更改合并到主干时,我可以在Word文档中解决冲突。
然而,该功能并不像它本来应该那样有用,因为它不能跟踪修订更改;它只是将两个文档作为整体进行比较。这样,当我合并一个修订版本时,其中一个段落被添加到文档中,我没有机会审查这个段落。相反,我必须审查源文档和目标文档之间的所有差异(包括目录书签名称等内容)。
这是一种固有的限制,我无法覆盖它吗?还是由于我的Word版本相当陈旧?(我正在使用Word 2002)。
另外,如果您知道任何神奇的工具或插件...;-)
1个回答

3

如果您想忽略目录的修改,您可以打补丁来自动接受TOC中的修订。

例如,在显示比较文档之前,您可以将以下行插入到diff-doc.js文件中:

var toc; 
var i; 

for (i = 1; i <= word.ActiveDocument.TablesOfContents.Count; i++)
{
    toc = word.ActiveDocument.TablesOfContents(i);
    toc.Range.Revisions.AcceptAll();    
}

不错的技巧。目录只是一个例子,但它绝对是最令人讨厌的差异之一。它能扩展到页眉和页脚吗?即使它们对所有页面都相同,每个页面似乎都被视为单独的更改。 - Álvaro González
当我解决冲突时,目录旁边仍会出现无数个“字段代码已更改”的注释。我是否还需要更改merge-doc.js脚本? - Álvaro González
是的,可能你需要修改那个脚本,而且也可以将补丁扩展到页眉和页脚。原则上,你需要遍历所有的页眉/页脚并接受所有更改。 - Dirk Vollmar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接