使用Mercurial进行Word文档版本控制

3

这是svn或mercurial版本控制Word文档的后续。

我希望多个非程序员能够在Word文档上使用版本控制。我可以配置Mercurial来查看未压缩的Docx文件。我想要的如下:

  1. 从Docx文件读取(在那个问题中回答,使用Mercurial的解压缩功能进行比较,很棒!)

  2. 每当有不冲突的更改时自动合并文档。从之前的回答中可以看出,这是使用比较工具完成的。

  3. 如果出现冲突,编程运行Word对比两个文档。

我手动打开了一个文件,然后在Word中打开另一个文件以查看它的情况。在我的Word 2004上,它似乎有点不稳定,但我从评论中看到,此功能在2010年得到了大大改进。

我发现了这个链接:http://office.microsoft.com/zh-cn/word-help/command-line-switches-for-microsoft-office-word-2007-HP010164010.aspx#BM1,它与命令行有关。现在我知道可以执行以下命令:winword /q /f file1.docx /f file2.docx。其中,q是指静默模式,/f指定文件。文档没有说明是否可以指定两个文件,但我尝试了一下,它会在不同的窗口中加载两个文件。所以,我唯一不知道的就是如何触发Word进行比较。Word交互是一个相当简单的脚本编写工作,还是涉及到二进制API(例如DCOM、ActiveX等)?

1
非常关注您对此的发现,但我没有答案。我在网上找到的所有内容基本上都说“Mercurial很好,但并不适用于所有情况,处理不易合并的二进制格式文件就是其中之一”。 - DarinH
看起来这是一个重复的帖子:https://dev59.com/aFjUa4cB1Zd3GeqPQFHa 那里的答案可能会对你有所帮助。 - DarinH
1
关于你的第一个问题,这个答案没有解决你的问题吗?实际上,第二个问题也在这个答案中通过引用合并模式得到了处理。我的意思是:如果你得到的答案不能解决你的问题,请使用评论或问题编辑,而不是只是再次提出同样的问题。 - Oben Sonne
@Oben,我想你在Mercurial方面是正确的。我看了你提到的第一个参考文献——合并模式,但忘记看交互工具了。不过,我认为运行Word仍然没有答案。 - Dov
1
我看到,通过编程打开Word进行比较确实是这个问题中的新内容 :) - Oben Sonne
1个回答

0
在TortoiseHg目录中搜索,我找到了一些脚本示例,实现了diff-scripts目录中文档文件的差异/合并。在Mercurial.ini中有一个[extdiff]部分,可以配置使用这些脚本。这可能会让你有所启发。

我会看一下这个,看它是否有效地替代了完全使用单词,谢谢。 - Dov

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