我寫了一個小小的ruby腳本,當我們的svn中添加了一個新的提交時,它向我發送了一封電子郵件。Ruby字符編碼問題
我得到的日誌與此代碼:
log = `/usr/bin/svnlook log #{ARGV[0]}`
當我從bash的運行我的腳本,我得到的電子郵件良好的編碼的字符,但是當我嘗試它,並創建一個新的提交我拿錯匈牙利字符。
我COMMITED這樣的:
TES OEA
我得到這個電子郵件:
日誌:??????TES \ 197 \ 145 \ 195 \ 169 \ 195 \ 161
我該如何解決這個問題?
是的,它在同一臺服務器上。當我執行測試時,這就是我所說的: ./post-commit/repository /,這是svn服務器在提交完成時調用的內容。我的post-commit bash腳本包含:REPOS =「$ 1」 REV =「$ 2」 ruby /repository/hooks/mail.rb「$ REPOS」「$ REV」 我不知道wat可以是問題。我用 p UniversalDetector :: chardet(消息)試了一下。它告訴我,當我調用腳本時,編碼是utf-8,當提交時調用它是一個ASCII碼。 – 2010-06-05 22:13:48
你可以嘗試發送$ LOAD_PATH,$ _,$ 0,$ *,$「。在環境中肯定有不同的東西。 – ndp 2010-06-06 00:24:14