Ошибка при отправке кода в gerrit с помощью git-review на windows

Я получаю сообщение об ошибке, когда пытаюсь отправить свой код в gerrit, используя gitbash на windows. Ошибка, как показано ниже:

$ git review
You are about to submit multiple commits. This is expected if you are
submitting a commit that is dependent on one or more in-review
commits. Otherwise you should consider squashing your changes into one
commit before submitting.
Traceback (most recent call last):
  File "c:\Python33\Scripts\git-review-script.py", line 9, in <module>
    load_entry_point('git-review==1.24', 'console_scripts', 'git-review')()
  File "C:\Python33\lib\site-packages\git_review\cmd.py", line 1214, in main
    assert_one_change(remote, branch, yes, have_hook)
  File "C:\Python33\lib\site-packages\git_review\cmd.py", line 718, in assert_on
e_change
    "Do you really want to submit the above commits?" % output)
  File "C:\Python33\lib\encodings\cp850.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_map)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\u2026' in position
8042: character maps to <undefined>

Процесс прерывается после сообщения об ошибке. Также версия git-review выглядит так:

$ git review --version
git-review-script.py version 1.24

Также версия git на моей машине с Windows:

git version 1.9.4.msysgit.1

Мне очень нужна помощь или любая подсказка о том, как заставить это работать.

Кодировка символов, отображаемая на моем cmd.exe: 850

1 ответ

Решение

Попробуйте установить Python 2.7.* И запустить git review с ним. У меня также были проблемы с запуском git-review на Python 3.*, хотя авторы утверждают, что он поддерживается.


Исследуя вашу проблему подробно, я заметил, что проблема с \u2026 характер (то есть горизонтальный многоточие - …). Известно, что у Python есть проблемы с его расшифровкой.

В качестве временного исправления, пожалуйста, перефразируйте ваши коммит-сообщения, чтобы они не содержали проблемных символов (замените… тремя точками).

Вы также можете использовать команду git review -y пропустить отображение подтверждения (таким образом, сообщение об ошибке тоже).


Я создал отчет об ошибках для git-review.

Другие вопросы по тегам