2012-02-13 279 views
4

我們都知道工具,第三方或內置於操作系統,用於將壓縮文件視爲文件夾。但有誰知道如何做相反的事情:誘使操作系統認爲包含一些文件的標準文件夾實際上是一個壓縮文件?尋求Windows,Linux和Mac解決方案(儘管我認識到沒有任何單一解決方案可以在所有這些平臺上運行)。如何將未壓縮文件夾視爲壓縮文件?

問題的上下文是獲取像SVN,Git或Mercurial這樣的源代碼版本控制系統,以便在存儲實際上是壓縮文件夾的文檔版本(包含各種XML文件,一些元數據和縮略圖或兩個縮略圖),例如ODT和DOCX。

我已經知道Zipdoc和類似的使用Git和Mercurial編碼/解碼掛鉤來將數據轉換爲存儲庫或從存儲庫轉出的utils。這是一個很好的解決方案,但我發現自己希望瀏覽包含文檔的未壓縮文件夾內容的存儲庫,並單獨對其中的文件進行區分。

這意味着未壓縮的內容必須添加到存儲庫,而不是壓縮文件的tar或壓縮版本。這反過來意味着來自存儲庫的檢出會生成一個包含文件的未壓縮文件夾。因此我原來的問題。

我設想的神話產品會檢測一個名稱包含「註冊」擴展名(例如「docx」)的文件夾,然後將它重新安裝爲同名壓縮文件。

另外,有沒有人知道如何利用Git/Mercurial編碼/解碼掛鉤來實現這個夢想?

+1

我一定是誤解了你,因爲我不明白爲什麼你需要的OS欺騙,以爲一個文件夾被壓縮。爲什麼不把常規的未壓縮目錄包含在repo中(沒有特殊的擴展名),並讓操作系統認爲它是未壓縮的。因爲它是。 – 2012-02-13 06:15:38

+1

這個問題是不一般的。如果可以使其更具體,你可能會得到更好的迴應。 – 2012-02-13 06:33:20

+0

@BenLee:所以雙擊「重新解釋」文件將打開適當的註冊應用程序的文件的類型/擴展名。我在這裏描繪了一個駕駛員級別的設施。 – textral 2012-02-13 11:45:03

回答

2

要在一個不錯的方式解決這個問題,你可以使用一個赫德翻譯與nsmux - 雖然改變你的內核很可能爲一大步:)

http://www.gnu.org/software/hurd/hurd/translator/nsmux.html

你也許能夠適應tarfs翻譯器。這將允許您通過folder,,zip打開文件夾。

但是這需要很多工作。

(這是一個非常簡單的用例指向一個相當複雜的問題的一個很好的例子)