用于处理Microsoft Word和/或OpenOffice文件的Git(或Hg)插件

Jud*_*ill 40 git version-control mercurial plugins openoffice.org

有没有人遇到过Git或Hg插件,用于"有意义"的差异/合并/分支OpenOffice或Microsoft word文件.

我知道我可以"签入".doc文件,但Git和Hg都将它们视为二进制blob.我希望能够对文件的文本执行所有(或至少很多)基于正常修订的操作.

是的,我确实知道我应该使用Latex或在RTF之间来回转换文件.我正在寻找更"原生"的解决方案,因为我正在努力管理技术人员和"管理人员"之间的协作.

这与我在Biostar上的问题有关:http://biostar.stackexchange.com/questions/1749/writing-collaboration-with-source-control-and-microsoft-word

谢谢.

apa*_*lue 9

怎么样:

  1. 以XML格式保存Word文档.
  2. 提交XML Word文件.
  3. 使用外部XML diff工具进行Diff.例如:

    $ git difftool -t xmldiff c3d293 498571

将XML文件转换为每行一个元素应该使签入过程高效运行,并允许外部XML diff工具快速处理.

参考文献:


rle*_*ndi 9

我能想出的一个很好的技巧也适用于Open Office文件,PPT等:

http://xcafebabe.blogspot.hu/2012/09/sexy-comparison-of-word-documents-with.html

这是一个演示结果的屏幕截图:

在此输入图像描述

  • +1截图。这正是TGit所做的!这就是我在[我的上述评论](http://stackoverflow.com/a/12312078/1020470)中所说的内容,但是如果要调用它,只需创建一个_new_ diff / merge-tool即可。直接从git或如果您没有tortoiseXXX。mac-folk做什么?如果您确实有TGit,则只需使用您的资源管理器扩展程序进行差异,合并等。请注意,如果您使用git merge / rebase,它仍然会失败,并且您仍然必须手动合并docs一词,这有点最初的目标。还在寻找。注意xml无效。 (2认同)

Mar*_*ski 8

如果您使用的是MS Windows,请使用TortoiseGit.我只是不得不经历这种痛苦的经历,TGit虽然不优雅,却会带来一些痛苦.其他几点:

  • 令人惊讶的是,git diff和gitk在至少可视化 .docx之间的差异方面做得相当不错(不确定.doc,但我认为它是相同的).这对于在执行提交时快速扫描差异很有用.
  • 就快进和自动装置而言,你完全没有运气.不幸的是我没有找到一个可以处理这个的工具(虽然我喜欢上面的xml想法),所以你必须手动完成所有的合并.
  • Microsoft Word(MS Word)有一个体面的,如果有缺陷的合并工具.AFAIK,它只能进行双向合并( :) X0 + dX = X1,而不是3向或2向合并,这在版本控制中更常见(即:) X0 + dX1 + dX2 = X1.您可以使用此工具解决合并冲突,但是会有一些合法的工作 - 检查每个分支,将HEAD导出为未跟踪版本等.

    X0 = *.BASE.docx,
    X0 + dX1 = *.LOCAL.docx and
    X0 + dX2 = *.REMOTE.docx
    
    Run Code Online (Sandbox Code Playgroud)
  • 幸运的是,这正是TGit(和TSVN)所做的.不幸的是,我会避免,rebase因为如果你必须连续重播几个变化,它可能会非常累人,但merge对于简短的文档很好,只是不太好.


Ry4*_*ase 1

律师事务所拥有极其健全的系统来做到这一点。一个不信任文档中的修订历史记录(因为它是外部来源的),而是进行自己的比较并可以提供增量。如果那是他们真正需要的,那么你最好购买它,而不是将包装放入 git 或 Mercurial 中,而这些包装永远不会真正对他们有用。

抱歉,听起来像悲观主义者,但技术人员更有可能使用(同时抱怨)价格过高的商业工具,而不是办公室人员使用 git 或 Mercurial 来达到任何程度的满意度。

  • 我不希望他们使用 git 或 hg ...我希望他们使用 Word(或类似的东西),然后我希望使用该插件来促进合并。我在一家学术机构,所以我怀疑我能否负担得起定制解决方案。出于好奇,您有“律师事务所”系统的名称或链接吗? (9认同)