svn list 顯示中文亂碼問題的解決方法 [原創 2007-11-07 21:15:26]   
          我頂 字號:

          很久沒用svn命令,忽然發現:

          C:\Documents and Settings\Administrator>svn list --non-interactive "file:///D:/u
          sr/svn/repositories/demo/"
          dir 2/
          dir1/
          ?\230?\150?\176?\229?\187?\186?\230?\150?\135?\228?\187?\182?\229?\164?\185/
          ?\230?\150?\176?\229?\187?\186?\230?\150?\135?\228?\187?\182?\229?\164?\185 (2)/


          C:\Documents and Settings\Administrator>

          返回的內容竟然是亂碼,正確的應該是:

          dir 2/
          dir1/
          新建文件夾
          新建文件夾 (2)

          安裝最新版本的svn: 1.4.5 ,重啟Windows,問題還是存在。

          在網上找了很久,最后,在http://www.etng.net/blog/2006/09/26/subversion-14%e7%89%88%e6%9c%ac%e7%9a%84windows%e6%9c%8d%e5%8a%a1%e9%85%8d%e7%bd%ae%e6%96%b9%e6%b3%95/  找到了解決方法,文章說,設置Windows系統環境變量:

          LANG=zh_CN.UTF8
          APR_ICONV_PATH=C:\Program Files\Subversion\iconv
          SVN_EDITOR=notepad.exe

          就可以解決。設置方法:對“我的電腦”按右鍵,選擇“屬性”,選擇“高級”欄,單擊“環境變量”,檢查“系統變量”列表是否有上述3個參數,如果有則進行修改,如果沒有,則進行添加;修改完后,按多次“確定”。 此時,系統環境變量已經生效,再打開命令提示符,執行命令:

          Microsoft Windows XP [版本 5.1.2600]
          (C) 版權所有 1985-2001 Microsoft Corp.

          C:\Documents and Settings\Administrator>"C:\Program Files\Subversion\bin\svn.exe
          " list file:///D:/usr/svn/repositories/demo
          dir 2/
          dir1/
          新建文件夾/
          新建文件夾 (2)/

          C:\Documents and Settings\Administrator>

          中文顯示正常了。

          至于是否可以設置 LANG=zh_CN.GBK   或者 zh_CN.GB2312 或者 zh_CN.GB13000 等,我嘗試了各種取值,似乎不影響svn的輸出結果。

          APR_ICONV_PATH的設置應該是關鍵所在,因為iconv目錄保存了各種編碼的轉換配置文件。按我的猜想:有了這些配置文件,就可以實現從Unicode與本地編碼的轉換,從而實現任意編碼之間的轉換。不知道猜得對不對?經過測試,如果APR_ICONV_PATH沒有配置,則可能導致亂碼,如果APR_ICONV_PATH配置錯誤,則很可能導致亂碼。當APR_ICONV_PATH配置正確時,總能正確顯示中文路徑,因此,應正確配置APR_ICONV_PATH。

          至于,SVN_EDITOR=notepad.exe,的配置,似乎沒使用用處。

          如果是在DOS批處理中,可以使用:

          set LANG=zh_CN.UTF8
          set APR_ICONV_PATH=C:\Program Files\Subversion\iconv
          set SVN_EDITOR=notepad.exe

          來設置環境變量,確保svn命令需要的環境變量配置正確。

          posts - 104, comments - 33, trackbacks - 0, articles - 0

          Copyright © 林光炎

          主站蜘蛛池模板: 上饶县| 左权县| 苗栗市| 武乡县| 乡宁县| 贡觉县| 张北县| 启东市| 星子县| 光泽县| 寻乌县| 商水县| 陆川县| 巴东县| 济阳县| 鹰潭市| 东乌珠穆沁旗| 南开区| 西乌| 张掖市| 五华县| 克山县| 成安县| 龙门县| 富锦市| 华宁县| 新绛县| 荥阳市| 谢通门县| 牡丹江市| 合作市| 文安县| 大新县| 鲜城| 无为县| 定远县| 中方县| 武胜县| 琼结县| 大足县| 天峨县|