我們主要在Windows環境下開發我們的PHP應用程序,並在PC/ANSI中存儲我們的文本源文件。什麼編碼用於跨平臺開發(PC,Macs,Linux)?
但是現在,一位開發人員加入我們,他們使用Mac平臺,我們遇到了在他的機器上創建「補丁」的問題。當他進行任何更改和作用:
svn diff > patchfile.patch
他生成補丁文件,指示該源代碼文件的每一條線路已被修改(這顯然原位缺口的情況下)。
我想保存測試ANSI文件:
PC/UTF-8 (using UTFCast Express which I writes the BOM by default)
PC/UTF-8 (using Notepad++ "Encoding > Convert to UTF-8" - which writes the BOM)
除了:
PC/UTF-8 (using Notepad++ "Encoding > Convert to UTF-8 without BOM")
PC/UTF-8 (using Notepad++ "Encoding > Encode in UTF-8 without BOM")
對於所有這些情況,每當他做的改變,並做一個SVN差異>補丁文件。補丁,它會輸出所有行,就好像所有的行都被改變了一樣!
[我們試圖做「SVN差異-x -p> patchfile.patch」在過去的3,以及 - 沒有區別]
順便提及,在最後兩個選項生成的文件繼續顯示爲ANSI在我的PC機器上。兩者似乎根本沒有修改該文件,並且在DOS提示符下執行'fc'(文件比較)沒有發現任何區別。
我應該使用哪種編碼進行跨平臺開發?
hi davmac - 是在SVN客戶端還是在服務器上設置的?我如何設置它爲整個SVN存儲庫使用'本機'編碼的一切? – siliconpi
您在客戶端設置屬性,然後將其提交到存儲庫。請參閱http://subversion.apache.org/faq.html#auto-props和http://svnbook.red-bean.com/en/1.6/svn.advanced.props。html(尤其是在「自動屬性設置」下) – davmac