(OK,我不吆喝,這是非常晚在這裏:))製作沒有基礎(源)文件的增量文件?
我研究三角DIFF工具(命令行工具或部件,它並不重要,只要我可以從給他們打電話德爾福2010)
我有這個項目上傳文件到服務器,我需要優化上傳,所以它真的很好,如果我只能上傳增量文件而不是發送新文件,然後比較兩個舊&服務器上的新文件版本。
我讀到口是心非here
口是心非是rdiff進行備份的變化,允許備份,而不從 存儲服務器合作,與像亞馬遜S3簡單存儲服務。它的工作原理是 提前爲每個塊生成散列,對它們進行加密,並將它們存儲在 服務器上,然後在執行增量備份時檢索它們。其餘的數據是 也出於安全目的加密存儲。
這引起了我的思維,是有工具(或方式)來生成一個補丁或delta文件(我不知道正確的術語是什麼)基礎上,新文件,沒有有權訪問原始文件?
我的意思是讓我們說我有這個文件,我修改一次:
my-data.db
[ my-data.db ] modified --> [ delta-file-1.diff ]
有沒有一種方法來構建[增量文件1.diff]根據新的文件無需訪問舊文件? (可能是通過爲原始文件存儲某種簽名?)
我研究了很多這個主題(rdiff,PatchAPI,ZDelta,XDelta,MSDelta等等)但我找不到任何真實的 - 世界上的這個工作的例子。
這些參考文獻討論了這個問題,但我想聽聽是否有人能指導我和/或提出更好的工具來回答我上面提出的問題。
Compressing a Target Without a Source File
Windows Patch API: Compressing a Target Without a Basis (Source) File
提前感謝!
你想知道A和B之間的區別,而不知道A? – kay 2012-02-25 06:45:02
@Kay:點好了,我寧願說我想得到A和B之間的區別,只有A的「簽名」在手(一系列哈希標識A可能是?)...有真的沒有羞恥的要求,你知道 – TheDude 2012-02-25 06:55:33
@Ken:請閱讀我的評論[這裏](http://stackoverflow.com/questions/9441801/making-delta-file-without-a-basis-source-file#comment12047688_9442106) ,確實有辦法做到這一點,唯一需要了解的是哪個工具是最好的(我只能找到一個軟件來做到這一點:rdiff) – TheDude 2012-03-01 08:23:36