因此,我想研究git適用於某些二進制或文本樹數據結構的版本跟蹤。事情是,我希望差異邏輯是完全自定義的,爲數據結構模式量身定製。使用git進行數據版本化:自定義比較特定文件
假設有問題的文件是一定的JSON對象,我希望有一個自定義的差異對JSON文件 所以,如果我有版本A作爲本:
{ a: 'yes' , b: { 'X': 'unavailable' , 'Y': ready } }
和我應用以下變化:
{ a: 'yes' , b: { 'X': 'unavailable' , 'Y': done } }
所以我的差異很聰明,發現只有項目1已更改。使用默認的 差異,如果其他人對密鑰a,item [0]進行了更改,則會產生需要手動合併的衝突。自定義差異將針對 針對特定文件類型和內容自定義差異邏輯。
二進制文件略有不同也可能適用。
這個問題的目的是要看看是否有:
- 方式在當前的git支持這種定製
- 項目或混帳發展的分支機構以支持該定製
- 一些其他工具更好旨在爲此
謝謝!
編輯我發現this article,我覺得給人的那種我想了解一下事情的非常範圍很廣。此外,這可能是一個跡象,迄今爲止還沒有解決這個問題的好辦法。
遠不是一個完整的答案;但這裏有一些影響樹對象差異算法的問題(不是特定的git)http://useless-factor.blogspot.com/2008/01/matching-diffing-and-merging-xml.html – lurscher 2012-02-14 02:43:44