2011-04-08 116 views
0

我完全清楚,這裏的答案在一般情況下是「你不知道」。我問的原因是SAP的一位PM正在問我爲什麼Crystal Report的TXT輸出不符合我的需求。過去,我已經看到用於二進制文件(特別是.doc,特別是iirc)的轉換器能夠順利地與Subversion(或者TortoiseSVN)一起將文件轉換爲ASCII並返回,以便實際合併/分支/協調。我希望能夠指向他們並說「這就是我所需要的」,但如果我能記住上次把他們拉扯起來的Google搜索,我就很難受。任何人都可以救我一點點痛苦,並指向正確的方向嗎?謝謝。如何將二進制文件轉換爲源代碼管理的ascii?

回答

0

使用SVN時,您可以使用屬性告訴他它是二進制的。如果你真的想要,我想到的第一個解決方案(但不是非常有效)是使用uuencode/uudecode。

+0

我知道,但是一旦我告訴SVN它是二進制的,我不再能夠調和衝突 - 這是全部或者沒有。 uuencode有很多相同的問題 - 如果我嘗試合併更改,我很可能會完全無法使用某些東西。 – SarekOfVulcan 2011-04-08 13:29:15

+0

那麼你需要一個特定的轉換器來處理你的特定的二進制類型,比如pdf2text(其中很多格式會丟失)。但是由於二進制可以是任何東西(想象可執行文件),所以沒有一般​​的例程,除了諸如uuencode或hexdump/od之類的東西外,它具有轉換知識。 – flolo 2011-04-08 13:39:10

+0

/特定轉換器/是的,這基本上是我上面要求的。 – SarekOfVulcan 2011-04-08 13:47:54

0

嗯,它不是二進制或ASCII之間的區別,而是如果面向行的差異/衝突解決方案是你所需要的。即使像UTF-8 XML這樣的非ASCII解決方案也可以提供幫助(並且在同一級別的元素排序上帶來「有趣的」問題)。

編碼二進制文件的最標準方式可能是base64編碼。各種形式和口味都可以輕鬆實現。當然,它會增加文件的大小,我敢打賭,如果有變化,SVN只能保留文件的前綴,因爲在變化點之後的後續編碼數據將完全不同。

相關問題