Проблема кодирования SVN-хука - PullRequest
4 голосов
/ 06 февраля 2010

Я создал svn hook, который вызывает php-скрипт для отправки писем. Проблема в том, что я получаю неправильно закодированные сообщения (я думаю, это то, что вы можете назвать)

Вот что я получаю по почте:

Измененные файлы - /base/view.php

Mais Umas actualiza? \ 195? \ 167? \ 195? \ 181es

Это то, что я получаю, когда ловушка вызывает скрипт. Но если я вызываю скрипт напрямую (с указанием ревизии), я получаю это:

Измененные файлы - /base/view.php

Mais umas actualizações

Письмо отправлено в кодировке iso-8859-1 (пробовал utf-8 и получил те же результаты)

Кто-нибудь знает, что я могу использовать / сделать, чтобы исправить это?
Спасибо

Ответы [ 2 ]

4 голосов
/ 29 октября 2010

Вам необходимо экспортировать LANG в ловушке после фиксации, иначе svnlook выведет de log в локали, установленной для вашего пользователя SVN:

(в post-commit, перед вызовом вашего скрипта)

export LANG = "fr_FR.UTF-8"

Конечно, вы можете настроить язык так, как вам нужно, если это utf8.

0 голосов
/ 07 февраля 2010

Вероятно, это связано с локалией исполняющей среды. Когда вы запускаете его самостоятельно, он находится в вашей локали и, вероятно, правильно обрабатывает специальные символы.

Я подозреваю, что ловушка выполняется в локали серверов subversion, которая может быть локалью 'C' или локалью, которая не знает, как обрабатывать эти символы.

...