Я хотел бы изменить язык git (на английский) в моей установке Linux без изменения языка для других программ и не смог найти настройки. Как это сделать?
Как изменить язык интерфейса командной строки Git?
Ответ 1
Добавьте эти строки в ~/.bashrc
или ~/.bash_profile
, чтобы заставить git отображать все сообщения на английском языке:
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
Псевдоним должен переопределить LC_ALL
в некоторых системах, когда установлена переменная среды LC_ALL
, которая имеет приоритет над LANG
. Подробнее см. Спецификация UNIX - Переменные окружения.
# Set Git language to English
#alias git='LC_ALL=en_US git'
alias git='LC_ALL=en_GB git'
Если вы добавили эти строки в ~/.bashrc
, псевдоним будет определен при запуске новой интерактивной оболочки. Если вы добавили его в ~/.bash_profile
, псевдоним будет применяться при входе в систему.
Ответ 2
Если вы просто хотите иметь одну команду на английском, вместо этого вы можете просто написать LC_ALL=C
перед командой, например:
LC_ALL=C git status
приведет к
# On branch master
nothing to commit, working directory clean
Язык, используемый в C
, является английским и всегда доступен без установки дополнительных языковых пакетов
(см. https://askubuntu.com/a/142814/34298)
Чтобы изменить его для всего текущего сеанса bash, просто введите
LANG=C
Чтобы изменить его, например, на немецкий введите
LANG=de_DE.UTF-8
Ответ 3
Добавление этой строки решило проблему для меня:
$ more ~/.bash_profile
export LANG=en_US
Ответ 4
Примечание: начиная с Git 2.3. 1+ (Q1/Q2 2015), Git добавит заголовок Accept-Language, если это возможно.
Смотрите коммит f18604b от Yi EungJun (eungjun-yi
)
Добавьте заголовок
Accept-Language
который указывает предпочитаемые пользователем языки, определенные в$LANGUAGE
,$LC_ALL
,$LC_MESSAGES
и$LANG
.Это дает серверам git возможность отображать удаленные сообщения об ошибках на предпочитаемом пользователем языке.
У вас есть локаль для git gui или других графических интерфейсов, но не для командной строки, учитывая, что это был один из вопросов GitSurvey 2010
localization of command-line messages (i18n) 258 3.6%
Конечно, с 2010 года, как описывает po/README
:
Прежде чем строки могут быть переведены, они должны быть помечены для перевода.
Git использует интерфейс интернационализации, который обертывает системную библиотеку
gettext
, поэтому большинство советов в вашей документации gettext (поinfo gettext
о системах GNUinfo gettext
в терминале) применимы.
В месте с git 1.7. 9+ (январь 2012):
Git использует
gettext
для перевода своих наиболее распространенных интерфейсных сообщений на язык пользователя, если переводы доступны и языковой стандарт настроен соответствующим образом.
Дистрибьюторы могут добавлять новыеPO
файлы вpo/
чтобы добавлять новые переводы.
Итак, если ваше обновление испортило перевод, проверьте, что использует gettext
:
См., Например, " Переменные среды Locale "
Локаль состоит из нескольких категорий локали, см. Аспекты. Когда программа ищет значения, зависящие от локали, она делает это в соответствии со следующими переменными среды в порядке приоритета:
LANGUAGE
LC_ALL
LC_xxx, according to selected locale category: LC_CTYPE, LC_NUMERIC, LC_TIME, LC_COLLATE, LC_MONETARY, LC_MESSAGES, ...
LANG
Переменные, чье значение установлено, но пусто, игнорируются в этом поиске.
LANG
- это обычная переменная среды для указания локали. Как пользователь, вы обычно устанавливаете эту переменную (если только некоторые другие переменные не были заданы системой, в/etc/profile
или аналогичных файлах инициализации).
LC_CTYPE
,LC_NUMERIC
,LC_TIME
,LC_COLLATE
,LC_MONETARY
,LC_MESSAGES
и т.д. - это переменные среды, предназначенные для переопределенияLANG
и влияющие только на одну категорию языковых стандартов.
Например, предположим, что вы являетесь шведским пользователем в Испании, и вы хотите, чтобы ваши программы обрабатывали цифры и даты в соответствии с испанскими соглашениями, и только сообщения должны быть на шведском языке. Затем вы можете создать локаль с именем 'sv_ES
или'sv_ES.UTF-8
, используя программуlocaledef
. Но это проще, и достигает тот же эффект, чтобы установитьLANG
переменнойes_ES.UTF-8
иLC_MESSAGES
переменнойsv_SE.UTF-8
; эти две локали уже предустановлены с операционной системой.
LC_ALL
- это переменная окружения, которая переопределяет все это. Обычно используется в сценариях, запускающих определенные программы. Например, настройте сценарии, сгенерированные GNUautoconf
используяLC_ALL
чтобы убедиться, что тесты конфигурации не работают в зависимости от локали.К сожалению, некоторые системы устанавливают
LC_ALL
в/etc/profile
или в похожих файлах инициализации. Поэтому, как пользователь, вы должны сбросить эту переменную, если хотите установитьLANG
и, возможно, некоторые другие переменныеLC_xxx
.
Ответ 5
Запустите LC_MESSAGES=C git
, а не LC_ALL = C или LANG = C, и нет необходимости удалять или переименовывать файлы.
Эта команда изменяет вывод сообщений Git на английский.
Ответ 6
GIT по умолчанию используется английский, если он не может найти язык Locale.
Итак, если вы хотите, чтобы GIT был на английском, просто саботируйте языковой файл, с которым он работает. В моем случае он всегда работал с немецким (т.е. de.msg).
Если я удалил его или переименовал, он по умолчанию на английском.
Здесь я переименовал файл
Ответ 7
Как предложил Бенгт: Добавьте эти строки в ваш ~/.bashrc
или ~/.bash_profile
чтобы git отображал все сообщения на английском языке: vim ~/.bashrc
- для этого профиля (если вы пользователь ubuntu
и вы его редактируете, это будет только для этого пользователя); добавить эти строки:
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
#you can add also
LANG=en_GB
и после закрытия файла вам нужно написать в оболочке:
source ~/.bashrc
перезагрузить новые настройки или выйти из терминала и снова подключиться :)
Ответ 8
Вот мое решение изменить язык git, следуйте ответу на этот и этот
1) nano ~/.bashrc
2) добавить alias git='LANG=en_GB git'
в файл
2) сохранить файл
4) source ~/.bashrc
Теперь ваш мерзавец уже меняет язык. Однако, если после перезапуска терминала и он больше не работает, вам необходимо
4.1) nano ~/.profile
4.2) добавить source ~/.bashrc
4.3) сохранить файл
он будет запускать source ~/.bashrc
всякий раз, когда вы открываете терминал
Надеюсь, это поможет