我们都知道用于将压缩文件视为文件夹的第三方工具或内置于操作系统的工具。但是有谁知道如何做相反的事情:欺骗操作系统认为包含一些文件的标准文件夹实际上是一个压缩文件?正在寻找适用于 Windows、Linux 和 Mac 的解决方案(尽管我意识到没有一种解决方案可以在所有这些平台上运行)。
问题的背景是让源代码版本控制系统(如 SVN、Git 或 Mercurial)更有效地存储实际上是压缩文件夹的文档版本之间的差异(保存各种 XML 文件、一些元数据和一两个缩略图),例如 ODT 和 DOCX。
我已经知道 Zipdoc 和类似的实用程序,它们使用 Git 和 Mercurial 编码/解码钩子来将数据转换进出存储库。这是解决问题的好方法,但我发现自己想浏览包含文档未压缩文件夹内容的存储库,并单独区分其中的文件。
这意味着必须将未压缩的内容添加到存储库,而不是文档的 tar'd 或 zipped-without-compression 版本。这反过来意味着从存储库中签出会生成一个未压缩的文件夹,其中包含代表文档的文件。因此,我原来的问题。
我设想的神话产品会检测一个名称包含“注册”扩展名(例如“docx”)的文件夹,然后将其“重新安装”为同名的压缩文件。
或者,有谁知道如何利用 Git/Mercurial 编码/解码钩子来实现这个梦想?