有些格式实际上是伪装的zip文件,例如docx或odt.如果我将它们直接存储在版本控制中,它们将作为二进制文件处理.我理想的解决方案是
foo.docx/
为每个foo.docx
文件创建一个目录,将所有文件解压缩到其中foo.docx
可以在更新后从存储的文件中重新创建我不希望docx文件本身受版本控制.(我知道一个相关的问题,建议使用自定义差异的不同方法.)
这可行吗?这可以用mercurial吗?
更新:
我知道钩子.我对细节很感兴趣.这是一个演示预期行为的会话.
> hg add foo.docx
> hg status
A foo.docx
> hg commit
> # Change foo.docx with external editor
> hg status
M foo.docx
> hg diff
+++ foo.docx/word/document.xml
- <w:t>An idea</w:t>
+ <w:t>A much better idea</w:t>
Run Code Online (Sandbox Code Playgroud) 我把几个.docx
,.txt
并.pdf
存档到.git存储库.我可以打开,编辑,保存本地.docx
文件; 但是,当我将它推送到github并将其下载回我的计算机时,Word抱怨它无法打开它.
为了.docx
在github 上存储文件,我应该对git设置做一些必要的步骤吗?