【发布时间】:2013-06-04 14:43:30
【问题描述】:
由于 OpenXML 基本上是 zip 存档中的 XML 文件,我想知道 Git 是否可以处理 OpenXML 文档以进行版本控制和合并操作以及差异比较。 谢谢
【问题讨论】:
由于 OpenXML 基本上是 zip 存档中的 XML 文件,我想知道 Git 是否可以处理 OpenXML 文档以进行版本控制和合并操作以及差异比较。 谢谢
【问题讨论】:
您可以对任何压缩文件格式采取以下方法:在将文件存储到 repo 之前让 git 解压缩文件,然后在签出之前再次重新压缩文件。然后文本差异会起作用,因为 repo 中的大部分内容都是纯文本。
人们肯定在使用这种方法:见Uncompress OpenOffice files for better storage in version control
【讨论】:
在 Git 中为非文本文件启用差异是通过 Git Attributes 实现的。
Pro Git book 中的Chapter 7.2 Customizing Git - Git Attributes 描述了如何配置.gitattributes。它提供了一个具体示例 (odt-to-txt),说明如何对 OpenDocument 文件执行此操作。由于 OpenDocument 也是一种压缩的 xml 格式,因此该示例对于 OpenXML 的修改应该相当简单。
【讨论】: