Je voudrais changer la langue de git (en anglais) dans mon installation Linux sans changer la langue des autres programmes et je n'ai pas pu trouver les paramètres. Comment faire?
Ajoutez ces lignes à votre ~/.bashrc
ou ~/.bash_profile
pour forcer git à afficher tous les messages en anglais:
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
L'alias doit remplacer LC_ALL
sur certains systèmes, lorsque la variable d'environnement LC_ALL
est défini, ce qui a priorité sur LANG
. Voir NIX Specification - Environment Variables pour plus d'explications.
# Set Git language to English
#alias git='LC_ALL=en_US git'
alias git='LC_ALL=en_GB git'
Si vous avez ajouté ces lignes à ~/.bashrc
l'alias sera défini lors du démarrage d'un nouveau shell interactif. Au cas où vous l'auriez ajouté à ~/.bash_profile
l'alias sera appliqué lors de la connexion.
Si vous voulez juste avoir une commande en anglais à la place, vous pouvez simplement écrire LC_ALL=C
avant la commande, par exemple:
LC_ALL=C git status
aura pour résultat
# On branch master
nothing to commit, working directory clean
Les paramètres régionaux utilisés dans C
sont anglais et toujours disponibles sans installer de modules linguistiques supplémentaires
(voir https://askubuntu.com/a/142814/34298 )
Pour le changer pour toute la session bash actuelle, entrez simplement
LANG=C
Pour le changer par exemple en allemand, entrez
LANG=de_DE.UTF-8
L'ajout de cette ligne a résolu le problème pour moi:
$ more ~/.bash_profile
export LANG=en_US
Remarque: depuis Git 2.3.1+ (Q1/Q2 2015), Git ajoutera un en-tête Accept-Language si possible.
Voir commit f18604b par Yi EungJun (eungjun-yi
)
Ajoutez un
Accept-Language
en-tête qui indique les langues préférées de l'utilisateur définies par$LANGUAGE
,$LC_ALL
,$LC_MESSAGES
et$LANG
.Cela donne aux serveurs git la possibilité d'afficher des messages d'erreur à distance dans la langue préférée de l'utilisateur.
Vous avez paramètres régionaux pour git gui ou autres interfaces graphiques , mais pas pour la ligne de commande, étant donné que c'était l'une des questions de GitSurvey 201
localization of command-line messages (i18n) 258 3.6%
Bien sûr, depuis 2010, comme po/README
décrit:
Avant que les chaînes puissent être traduites, elles doivent d'abord être marquées pour la traduction.
Git utilise une interface d'internationalisation qui enveloppe la bibliothèque
gettext
du système , donc la plupart des conseils dans votre gettext documentation (sur GNU systèmesinfo gettext
dans un terminal) s'applique.
En place depuis git 1.7.9 + (janvier 2012):
Git utilise
gettext
pour traduire ses messages d'interface les plus courants dans la langue de l'utilisateur si des traductions sont disponibles et que les paramètres régionaux sont correctement définis .
Les distributeurs peuvent déposer de nouveaux fichiersPO
danspo/
pour ajouter de nouvelles traductions.
Donc, si votre mise à jour a gâché la traduction, vérifiez ce que gettext
utilise:
Voir, par exemple, " Variables d'environnement local "
Une locale est composée de plusieurs catégories de locale, voir Aspects. Lorsqu'un programme recherche des valeurs dépendantes des paramètres régionaux, il le fait en fonction des variables d'environnement suivantes, par ordre de priorité:
LANGUAGE
LC_ALL
LC_xxx, according to selected locale category: LC_CTYPE, LC_NUMERIC, LC_TIME, LC_COLLATE, LC_MONETARY, LC_MESSAGES, ...
LANG
Les variables dont la valeur est définie mais vide sont ignorées dans cette recherche.
LANG
est la variable d'environnement normale pour spécifier un paramètre régional. En tant qu'utilisateur, vous définissez normalement cette variable (sauf si certaines des autres variables ont déjà été définies par le système, dans/etc/profile
ou fichiers d'initialisation similaires).
LC_CTYPE
,LC_NUMERIC
,LC_TIME
,LC_COLLATE
,LC_MONETARY
,LC_MESSAGES
, et ainsi de suite, sont les variables d'environnement destinées à remplacerLANG
et affectant une seule catégorie de paramètres régionaux.
Par exemple, supposons que vous êtes un utilisateur suédois en Espagne et que vous souhaitez que vos programmes gèrent les nombres et les dates conformément aux conventions espagnoles, et seuls les messages doivent être en suédois. Ensuite, vous pouvez créer une locale nommée ‘sv_ES
' ou 'sv_ES.UTF-8
’En utilisant le programmelocaledef
. Mais il est plus simple, et obtient le même effet, de définir la variableLANG
sures_ES.UTF-8
et leLC_MESSAGES
variable àsv_SE.UTF-8
; ces deux paramètres régionaux sont déjà préinstallés avec le système d'exploitation.
LC_ALL
est une variable d'environnement qui remplace tout cela. Il est généralement utilisé dans les scripts qui exécutent des programmes particuliers. Par exemple, configurez les scripts générés par GNUautoconf
useLC_ALL
pour vous assurer que les tests de configuration ne fonctionnent pas de manière dépendante des paramètres régionaux.Certains systèmes, malheureusement, définissent
LC_ALL
dans/etc/profile
ou dans des fichiers d'initialisation similaires. En tant qu'utilisateur, vous devez donc désactiver cette variable si vous souhaitez définirLANG
et éventuellement certains des autresLC_xxx
variables.
Courir LC_MESSAGES=C git
, pas LC_ALL = C ou LANG = C et pas besoin de supprimer ou renommer des fichiers.
Cette commande change les messages Git de sortie en anglais.
GIT utilise par défaut l'anglais s'il ne trouve pas la langue locale.
Donc, si vous voulez que GIT soit en anglais, sabotez simplement le fichier de langue avec lequel il s'exécute. Dans mon cas, il fonctionnait toujours en allemand (c'est-à-dire: de.msg).
Si je l'ai supprimé ou renommé, il est par défaut en anglais.
Ici j'ai renommé le fichier
Voici ma solution pour changer la langue de git, suivez la réponse this et this
1) nano ~/.bashrc
2) ajoutez alias git='LANG=en_GB git'
au fichier
2) enregistrez le fichier
4) source ~/.bashrc
Maintenant, votre git change déjà la langue. Cependant, [~ # ~] si [~ # ~] après votre terminal de redémarrage et qu'il ne fonctionne plus, vous devez
4.1) nano ~/.profile
4.2) ajouter source ~/.bashrc
4.3) enregistrer le fichier
cela fera source ~/.bashrc
exécuté chaque fois que vous ouvrez le terminal
J'espère que ça aide
Comme l'a suggéré Bengt: ajoutez ces lignes à votre ~/.bashrc
ou ~/.bash_profile
pour forcer git à afficher tous les messages en anglais: vim ~/.bashrc
- pour ce profil (si vous êtes utilisateur ubuntu
et que vous le modifiez, ce sera uniquement pour cet utilisateur); ajoutez ces lignes:
# Set Git language to English
#alias git='LANG=en_US git'
alias git='LANG=en_GB git'
#you can add also
LANG=en_GB
et après avoir fermé le fichier, vous devez écrire dans Shell:
source ~/.bashrc
pour recharger de nouveaux paramètres ou quitter le terminal et vous reconnecter :)