2011-01-25 74 views
1

我喜歡使用壓縮文件夾作爲文件格式容器的想法。它們用於LibreOffice或Dia。所以如果我想定義一個特殊用途的文件格式,我可以定義一個文件夾和文件結構,只需壓縮根文件夾,並將單個文件的所有數據都包含在一個文件中。導入的文件只是作爲原件在壓縮文件中存在。使用此功能從零定義二進制文件格式將是很多工作。包含版本的文件格式

現在我的問題:是否有應用程序使用壓縮文件夾作爲文件格式並在文件夾內進行版本控制?好處很大。您可以將項目中的某個狀態提交到您的文件中,並且版本只是使用您自己的應用程序中的函數進行裝飾。也可以用你自己的方式呈現差異。

可用於處理壓縮文件和版本的庫。所使用的版本控制系統應該是一個分佈式系統,其中存儲庫位於工作文件夾內,而不是像其客戶端 - 服務器模型那樣與其顛覆。

您認爲如何?我確信使用這種方法有應用程序,但我找不到。或者這種方法有什麼主要缺點?

回答

1

聽起來像一個有趣的想法。 我知道許多應用程序聲稱他們有「無限制」撤消和重做,但是這隻能回到我最近打開此文件的時間。 在您的系統中,即使在我看到最近一次打開此文件的版本之前,應用程序仍可以「撤消」該文件的先前版本,即 - 這可能是一個漂亮的功能。您是否看過TortoiseHg? TortoiseHg使用Mercurial,這是 「分佈式系統,其中存儲庫位於工作文件夾內」。

您可以使用Mercurial文件格式並借用TortoiseHg和Mercurial源代碼來使用它,而不是定義新的壓縮版本化文件格式和所有軟件以從頭開始使用它。

如果我正在使用兩個不同的應用程序, ,並且每個應用程序都希望以其自己稍微不同的壓縮版本文件格式存儲整個項目,會發生什麼情況?

0

我現在發現的是,OpenOffice又名LibreOffice裏面有一種版本控制。 LibreOffice文件是一個帶有結構化內容(XML,direcories,...)的zip文件。您可以將當前內容標記爲一個版本。這導致創建一個包含所有版本信息的VersionList.xml。版本目錄已添加,其中包含版本1,版本2等文件。這些文件是該州的實際文件。

相關問題