Как изменить язык интерфейса командной строки Git?



Я хотел бы изменить язык git (на английский) в моей установке Linux и не смог найти настройки.
Как это сделать?

1233   5  

5 ответов:

добавить эти строки в свой ~/.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 псевдоним, который будет использоваться при входе в систему.

если вы просто хотите иметь одну команду на английском языке, вместо этого вы можете просто написать 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

Примечание: начиная с Git 2.3.1+ (Q1/Q2 2015), Git добавит заголовок Accept-Language, если это возможно.
Смотрите commit f18604b by Yi EungJun (eungjun-yi)

добавить Accept-Language заголовок, который указывает предпочтительный пользователя языки, определенные $LANGUAGE,$LC_ALL,$LC_MESSAGES и $LANG.

это дает git-серверам возможность отображать удаленные сообщения об ошибках в выбранный пользователем язык.


у вас есть locale for Git gui или другие графические интерфейсы,но не для командной строки, учитывая, что это был один из вопросов GitSurvey 2010

localization of command-line messages (i18n)    258     3.6%    

конечно, с 2010 года, как po/README описание:

прежде чем строки могут быть переведены, они сначала должны быть отмечены для перевода.

Git использует интерфейс интернационализации, который обертывает систему gettext библиотека, поэтому большинство советов в вашей документации gettext (в системах GNU info gettext в терминале) применяется.

С git 1.7.9+ (январь 2012):

Git использует gettext для перевода наиболее распространенных сообщений интерфейса на язык пользователя, если переводы доступны и локаль устанавливается соответствующим образом.
Дистрибьюторы могут отказаться от новых PO файлы po/ для добавления новых переводов.

Итак, если ваше обновление испортило перевод, проверьте, что gettext применение:
Смотрите, например,"Переменные Среды Локали"

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

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’ С помощью . Но это проще, и достигает того же эффекта, чтобы установить LANG переменной к es_ES.UTF-8 и LC_MESSAGES переменная sv_SE.UTF-8; эти два языка уже предустановлены вместе с операционной системой.

LC_ALL - это переменная окружения, которая переопределяет все эти параметры. Он обычно используется в сценариях, которые запускают определенные программы. Например, настроить скрипты, созданные GNU autoconf использовать LC_ALL чтобы убедиться, что тесты конфигурации не работают в зависимости от локали.

некоторые системы, к сожалению, установить LC_ALL in /etc/profile или в аналогичных файлах инициализации. Как пользователь, вы должны снять эту переменную, если вы хотите установить LANG и, возможно, некоторые из других LC_xxx переменные.

Run LC_MESSAGES=C git, не LC_ALL=C или LANG=C и нет необходимости удалять или переименовывать файлы.

эта команда изменяет выходные сообщения Git на английский язык.

по умолчанию Git на английском языке, если он не может найти язык.

поэтому, если вы хотите, чтобы GIT был на английском языке, просто саботируйте языковой файл, с которым он работает. В моем случае он всегда работал с немецким (т. е.: de.msg).

Если я удалил его или переименовал его, то он по умолчанию перешел на английский язык.

enter image description here

здесь я переименовал файл

enter image description here

Comments

    Ничего не найдено.