Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
-
2.53.0
2026-02-02
-
2.52.0
2025-11-17
-
2.51.2
2025-10-27
-
2.51.1
2025-10-15
-
2.51.0
2025-08-18
- 2.50.1 no changes
-
2.50.0
2025-06-16
- 2.49.1 no changes
-
2.49.0
2025-03-14
- 2.48.2 no changes
-
2.48.1
2025-01-13
-
2.48.0
2025-01-10
- 2.47.3 no changes
-
2.47.2
2024-11-26
-
2.47.1
2024-11-25
-
2.47.0
2024-10-06
- 2.46.4 no changes
-
2.46.3
2024-11-26
-
2.46.2
2024-09-23
-
2.46.1
2024-09-13
-
2.46.0
2024-07-29
- 2.45.4 no changes
-
2.45.3
2024-11-26
- 2.45.1 → 2.45.2 no changes
-
2.45.0
2024-04-29
- 2.44.4 no changes
-
2.44.3
2024-11-26
- 2.44.1 → 2.44.2 no changes
-
2.44.0
2024-02-23
- 2.43.7 no changes
-
2.43.6
2024-11-26
- 2.43.2 → 2.43.5 no changes
-
2.43.1
2024-02-09
-
2.43.0
2023-11-20
-
2.42.4
2024-11-26
- 2.42.2 → 2.42.3 no changes
-
2.42.1
2023-11-02
-
2.42.0
2023-08-21
-
2.41.3
2024-11-26
- 2.41.1 → 2.41.2 no changes
-
2.41.0
2023-06-01
-
2.40.4
2024-11-26
- 2.40.1 → 2.40.3 no changes
-
2.40.0
2023-03-12
- 2.39.1 → 2.39.5 no changes
-
2.39.0
2022-12-12
- 2.38.3 → 2.38.5 no changes
-
2.38.2
2022-12-11
-
2.38.1
2022-10-07
-
2.38.0
2022-10-02
- 2.37.5 → 2.37.7 no changes
-
2.37.4
2022-10-06
- 2.37.3 no changes
-
2.37.2
2022-08-11
- 2.37.1 no changes
-
2.37.0
2022-06-27
- 2.36.4 → 2.36.6 no changes
-
2.36.3
2022-10-06
-
2.36.2
2022-06-23
- 2.36.1 no changes
-
2.36.0
2022-04-18
- 2.35.6 → 2.35.8 no changes
-
2.35.5
2022-10-06
-
2.35.4
2022-06-23
-
2.35.3
2022-04-13
-
2.35.2
2022-03-23
- 2.35.1 no changes
-
2.35.0
2022-01-24
- 2.34.6 → 2.34.8 no changes
-
2.34.5
2022-10-06
-
2.34.4
2022-06-23
-
2.34.3
2022-04-13
-
2.34.2
2022-03-23
- 2.34.1 no changes
-
2.34.0
2021-11-15
- 2.33.6 → 2.33.8 no changes
-
2.33.5
2022-10-06
-
2.33.4
2022-06-23
-
2.33.3
2022-04-13
-
2.33.2
2022-03-23
-
2.33.1
2021-10-12
-
2.33.0
2021-08-16
- 2.32.5 → 2.32.7 no changes
-
2.32.4
2022-10-06
-
2.32.3
2022-06-23
-
2.32.2
2022-04-13
-
2.32.1
2022-03-23
-
2.32.0
2021-06-06
- 2.31.6 → 2.31.8 no changes
-
2.31.5
2022-10-06
-
2.31.4
2022-06-23
-
2.31.3
2022-04-13
-
2.31.2
2022-03-23
-
2.31.1
2021-03-26
-
2.31.0
2021-03-15
- 2.30.7 → 2.30.9 no changes
-
2.30.6
2022-10-06
-
2.30.5
2022-06-23
-
2.30.4
2022-04-13
-
2.30.3
2022-03-23
- 2.30.2 no changes
-
2.30.1
2021-02-08
-
2.30.0
2020-12-27
- 2.29.1 → 2.29.3 no changes
-
2.29.0
2020-10-19
- 2.28.1 no changes
-
2.28.0
2020-07-27
- 2.27.1 no changes
-
2.27.0
2020-06-01
- 2.26.1 → 2.26.3 no changes
-
2.26.0
2020-03-22
- 2.25.3 → 2.25.5 no changes
-
2.25.2
2020-03-17
-
2.25.1
2020-02-17
-
2.25.0
2020-01-13
- 2.24.1 → 2.24.4 no changes
-
2.24.0
2019-11-04
- 2.23.1 → 2.23.4 no changes
-
2.23.0
2019-08-16
- 2.22.2 → 2.22.5 no changes
-
2.22.1
2019-08-11
-
2.22.0
2019-06-07
- 2.21.1 → 2.21.4 no changes
-
2.21.0
2019-02-24
- 2.20.1 → 2.20.5 no changes
-
2.20.0
2018-12-09
- 2.19.3 → 2.19.6 no changes
-
2.19.2
2018-11-21
- 2.19.1 no changes
-
2.19.0
2018-09-10
- 2.18.1 → 2.18.5 no changes
-
2.18.0
2018-06-21
- 2.17.1 → 2.17.6 no changes
-
2.17.0
2018-04-02
-
2.16.6
2019-12-06
-
2.15.4
2019-12-06
-
2.14.6
2019-12-06
-
2.13.7
2018-05-22
-
2.12.5
2017-09-22
-
2.11.4
2017-09-22
-
2.10.5
2017-09-22
-
2.9.5
2017-07-30
-
2.8.6
2017-07-30
-
2.7.6
2017-07-30
-
2.6.7
2017-05-05
-
2.5.6
2017-05-05
-
2.4.12
2017-05-05
-
2.3.10
2015-09-28
-
2.2.3
2015-09-04
-
2.1.4
2014-12-17
-
2.0.5
2014-12-17
SYNOPSIS
git config list [<option-de-fichier>] [<option-d-affichage>] [--includes] git config get [<option-de-fichier>] [<option-d-affichage>] [--includes] [--all] [--regexp] [--value=<motif>] [--fixed-value] [--default=<default>] [--url=<url>] <nom> git config set [<option-de-fichier>] [--type=<type>] [--all] [--value=<motif>] [--fixed-value] <nom> <valeur> git config unset [<option-de-fichier>] [--all] [--value=<motif>] [--fixed-value] <nom> git config rename-section [<option-de-fichier>] <ancien-nom> <nouveau-nom> git config remove-section [<option-de-fichier>] <nom> git config edit [<option-de-fichier>] git config [<option-de-fichier>] --get-colorbool <nom> [<stdout-est-tty>]
DESCRIPTION
Vous pouvez interroger/définir/remplacer/annuler les options avec cette commande. Le nom est en fait la section et la clé séparées par un point, et la valeur sera échappée.
Plusieurs lignes peuvent être ajoutées à une option en utilisant l’option --append. Si vous voulez mettre à jour ou annuler une option qui peut se trouver sur plusieurs lignes, --value=<motif> (qui est une expression régulière étendue, à moins que l’option --fixed-value soit donnée) doit être donné. Seules les valeurs existantes qui correspondent au motif sont mises à jour ou annulées. Si vous voulez gérer les lignes qui ne correspondent pas au motif, ajoutez simplement un point d’exclamation devant (voir aussi EXEMPLES), mais notez que cela ne fonctionne que lorsque l’option --fixed-value n’est pas utilisée.
L’option --type=<type> indique à git config de s’assurer que les valeurs entrantes et sortantes peuvent être canonisées sous le <type> donné. Si aucun --type=<type> n’est donné, aucune canonisation ne sera effectuée. Les appelants peuvent annuler un spécificateur --type existant avec --no-type.
Lors de la lecture, les valeurs sont lues par défaut à partir des fichiers de configuration du système, du globaux à l’utilisateur et locaux au dépôt, et les options --system, --global, --local, --worktree et --file <nom-de-fichier> peuvent être utilisées pour indiquer à la commande de lire uniquement à partir de chaque emplacement (voir FICHIERS).
Lors de l’écriture, la nouvelle valeur est écrite dans le fichier de configuration local du dépôt par défaut, et les options --system, --global, --worktree, --file <fichier> peuvent être utilisées pour dire à la commande d’écrire à cet endroit (vous pouvez dire --local mais c’est la valeur par défaut).
Cette commande échouera avec un statut non nul en cas d’erreur. Certains codes de sortie sont :
-
La section ou la clé n’est pas valide (ret=1),
-
aucune section ou nom n’a été fourni (ret=2),
-
le fichier de configuration est invalide (ret=3),
-
le fichier de configuration ne peut pas être écrit (ret=4),
-
vous essayez d’annuler une option qui n’existe pas (ret=5),
-
vous essayez de désactiver/définir une option pour laquelle plusieurs lignes correspondent (ret=5), ou
-
vous essayez d’utiliser une expression rationnelle non valide (ret=6).
En cas de succès, la commande renvoie le code de sortie 0.
Une liste de toutes les variables de configuration disponibles peut être obtenue en utilisant la commande git help --config.
COMMANDES
- list
-
Lister toutes les variables définies dans le fichier de configuration, avec leurs valeurs.
- get
-
Émet la valeur de la clé spécifiée. Si la clé est présente plusieurs fois dans la configuration, émet la dernière valeur. Si
--allest spécifié, émet toutes les valeurs associées à la clé. Retourne le code d’erreur 1 si la clé n’est pas présente. - set
-
Définir la valeur pour une ou plusieurs options de configuration. Par défaut, cette commande refuse d’écrire des options de configuration multi-valeur. Passer
--allremplacera toutes les options de configuration multi-valeur avec la nouvelle valeur, alors que--value=remplacera toutes les options de configuration dont les valeurs correspondent au modèle donné. - unset
-
Valeur désinitialisée pour une ou plusieurs options de configuration. Par défaut, cette commande refuse de désactiver les clés multi-valeurs. Passer
--alldé-enregistrera toutes les options de configuration multi-valeur, alors que--valuedé-enregistrera toutes les options de configuration dont les valeurs correspondent au modèle donné. - rename-section
-
Renommer la section donnée avec un nouveau nom.
- remove-section
-
Supprimer la section indiquée du fichier de configuration.
- edit
-
Ouvrir un éditeur pour modifier le fichier de configuration spécifié ; soit
--system,--global,--local(par défaut),--worktreeou--file<fichier-config>.
OPTIONS
- --replace-all
-
Le comportement par défaut est de remplacer au maximum une ligne. Ceci remplace toutes les lignes correspondant à la clé (et facultativement
--value=<motif>). - --append
-
Ajoute une nouvelle ligne à l’option sans modifier les valeurs existantes. C’est la même chose que de fournir
--value=^$àset. - --comment <message>
-
Ajouter un commentaire à la fin des lignes nouvelles ou modifiées.
Si <message> commence avec un ou plusieurs espaces blancs suivis par "", il est utilisé tel quel. S’il commence par "", un espace est préfixé avant qu’il ne soit utilisé. Sinon, une chaîne " # " (un espace suivi d’un dièse suivi d’un espace) est préfixée à elle. Et la chaîne résultante est placée immédiatement après la valeur définie pour la variable. Le _ <message>_ ne doit pas contenir de caractères retour-chariot (les commentaires multi-lignes ne sont pas permis).
- --all
-
Avec
get, renvoyer toutes les valeurs pour une clé à valeurs multiples. - --regexp
-
avec
get, interpréter le nom comme une expression régulière. La correspondance des expressions régulières est actuellement sensible à la casse et se fait par rapport à une version canonisée de la clé dans laquelle les noms de sections et de variables sont en minuscules, mais pas les noms de sous-sections. - --url=<URL>
-
Lorsqu’un <nom> en deux parties <section>.<clé> est donné, la valeur de <section>.<URL>.<clé> dont la partie <URL> correspond le mieux à l’URL donnée est retournée (si une telle clé n’existe pas, la valeur de <section>.<clé> est utilisée comme solution de repli). Lorsqu’on donne juste la section comme nom, le faire pour toutes les clés de la <section> et les lister. Renvoie le code d’erreur 1 si aucune valeur n’est trouvée.
- --global
-
Pour l’écriture des options : écrire dans le fichier global
~/.gitconfigplutôt que dans le.git/configdu dépôt, écrire dans le fichier$XDG_CONFIG_HOME/git/configsi ce fichier existe et que le fichier~/.gitconfign’existe pas.Pour les options de lecture : lire uniquement depuis le
~/.gitconfigglobal et depuis$XDG_CONFIG_HOME/git/configplutôt que depuis tous les fichiers disponibles.Voir aussi FICHIERS.
- --system
-
Pour l’écriture des options : écrire dans le
$(prefix)/etc/gitconfigniveau système plutôt que dans le.git/configdu dépôt.Pour la lecture des options : lire seulement à partir de
$(prefix)/etc/gitconfigniveau système plutôt qu’à partir de tous les fichiers disponibles.Voir aussi FICHIERS.
- --local
-
Pour l’écriture des options : écrire dans le fichier
.git/configdu dépôt. C’est le comportement par défaut.Pour la lecture des options : lire uniquement depuis le
.git/configdu dépôt plutôt que depuis tous les fichiers disponibles.Voir aussi FICHIERS.
- --worktree
-
Similaire à
--localsauf que$GIT_DIR/config.worktreeest lu ou écrit siextensions.worktreeConfigest activé. Sinon, c’est la même chose que--local. Notez que$GIT_DIRest égal à$GIT_COMMON_DIRpour l’arbre-de-travail principal, mais est de la forme$GIT_DIR/worktrees/<id>/pour les autres arbres-de-travail. Voir git-worktree[1] pour savoir comment activerextensions.worktreeConfig. - -f <fichier-de-config>
- --file <fichier-de-config>
-
Pour l’écriture des options : écrire dans le fichier spécifié plutôt que dans le
.git/configdu dépôt.Pour la lecture des options : lire uniquement à partir du fichier spécifié plutôt qu’à partir de tous les fichiers disponibles.
Voir aussi FICHIERS.
- --blob <blob>
-
Similaire à
--filemais utiliser le blob donné au lieu d’un fichier. Par exemple, vous pouvez utiliser master:.gitmodules pour lire les valeurs du fichier .gitmodules dans la branche master. Voir la section "SPECIFICATION DE REVISIONS" dans gitrevisions[7] pour une liste plus complète des façons d’épeler les noms de blob. -
--value=<motif> -
--no-value -
Avec
get,set, andunset, ne recherche le correspondance qu’avec <motif>. Le motif est une expression régulière étendue à moins que--fixed-valuene soit donné.Utiliser
--no-valuepour annuler la défintion de <motif>. - --fixed-value
-
Lorsqu’utilisé avec
--value=<motif>, traiter <motif> comme une chaîne exacte au lieu d’une expression régulière. Cela limitera les paires nom/valeur qui correspondent uniquement à celles dont la valeur est exactement égale à <motif>. - --type <type>
-
git config s’assurera que toute entrée ou sortie est valide sous la ou les contraintes de type fournies, et canonisera les valeurs sortantes dans la forme canonique de <type>.
Les « <type> » valides comprennent :
-
bool : canonicaliser les valeurs
true,yes,on, et les nombres positifs commetrue, et les valeursfalse,no,offet0commefalse. -
int : canoniser les valeurs sous forme de nombres décimaux simples. Un suffixe facultatif de k, m ou g entraînera la multiplication de la valeur par 1024, 1048576 ou 1073741824 lors de la lecture.
-
bool-ou-int : canoniser selon bool ou int, comme décrit ci-dessus.
-
path : canonise en ajoutant un
~à la valeur de$HOMEet~userau répertoire personnel de l’utilisateur spécifié. Ce spécificateur n’a aucun effet lors de la définition de la valeur (mais vous pouvez utilisergitconfigsection.variable~/depuis la ligne de commande pour laisser votre shell faire l’expansion). -
expiry-date' : canonisation en convertissant une chaîne de date fixe ou relative en un horodatage. Ce spécificateur n’a aucun effet lors de la définition de la valeur.
-
color : Lors de l’obtention d’une valeur, la canoniser en la convertissant en une séquence d’échappement de couleur ANSI. Lors de la définition d’une valeur, un contrôle de sanité est effectué pour s’assurer que la valeur donnée peut être canonisée en tant que couleur ANSI, mais elle est écrite telle quelle.
-
- --bool
- --int
- --bool-or-int
- --path
- --expiry-date
-
Options historiques pour la sélection d’un spécificateur de type. Préférez plutôt
--type(voir ci-dessus). - --no-type
-
Défait le spécificateur de type précédemment défini (s’il y en avait un). Cette option demande à git config de ne pas canoniser la variable récupérée.
--no-typen’a aucun effet sans--type=<type> ou--<type>. - -z
- --null
-
Pour toutes les options qui produisent des valeurs et/ou des clés, terminer toujours les valeurs par le caractère nul (au lieu d’une nouvelle ligne). Utiliser plutôt le saut de ligne comme délimiteur entre la clé et la valeur. Cela permet une analyse sûre de la sortie sans être confondu, par exemple, avec des valeurs qui contiennent des sauts de ligne.
- --name-only
-
Afficher seulement les noms des variables de configuration pour
listouget. -
--show-names -
--no-show-names -
Avec
get, afficher les clés de configuration en plus de leurs valeurs. La valeur par défaut est--no-show-namesà moins que--urlne soit donnée et qu’il n’y ait pas de sous-section dans <nom>. - --show-origin
-
Augmenter la sortie de toutes les options de configuration interrogées avec le type d’origine (fichier, entrée standard, blob, ligne de commande) et l’origine réelle (chemin du fichier de configuration, ref, ou identifiant du blob si applicable).
- --show-scope
-
Similaire à
--show-originen ce qu’il augmente la sortie de toutes les options de configuration interrogées avec la portée de cette valeur (arbre-de-travail, locale, globale, système, commande). - --get-colorbool <nom> [<stdout-est-tty>]
-
Trouver le paramètre de couleur pour <nom> (par exemple,
color.diff) et affiche "true" ou "false". <stdout-est-tty> devrait être soit "true" soit "false", et est pris en compte lorsque la configuration est "auto". Si <stdout-est-tty> est absent, alors vérifier la sortie standard de la commande elle-même, et sortir avec le statut 0 si la couleur doit être utilisée, ou sortir avec le statut 1 sinon. Lorsque le paramètre de couleur pour <nom> est indéfini, la commande utilisecolor.uicomme solution de repli. - --includes
- --no-includes
-
Respecter les directives
include.*dans les fichiers de configuration lors de la recherche de valeurs. La valeur par défaut estofflorsqu’un fichier spécifique est donné (par exemple, en utilisant--file,--global, etc) etonlorsqu’on cherche dans tous les fichiers de configuration. - --default <valeur>
-
Lors de l’utilisation de
get, et que la variable demandée n’est pas trouvée, se comporter comme si <valeur> était la valeur assignée à cette variable.
MODES OBSOLÈTES
Les modes suivants ont été dépréciés en faveur des sous-commandes. Il est recommandé de migrer vers la nouvelle syntaxe.
- git config <nom>
-
Remplacé par
gitconfigget<nom>. - git config <nom> [<motif-de-valeur>]
-
Remplacé par
gitconfigset[--value=<motif>] <nom> <valeur>. - -l
- --list
-
Remplacé par`git config list`.
- --get <nom> [<motif-de-valeur>]
-
Remplacé par
gitconfigget[--value=<motif>] <nom>. - --get-all <nom> [<motif-de-valeur>]
-
Remplacé par
gitconfigget[--value=<motif>]--all<nom>. - --get-regexp <regexp-de-nom>
-
Remplacé par
gitconfigget--all--show-names--regexp<regexp-de-nom>. - --get-urlmatch <nom> <URL>
-
Remplacé par
gitconfigget--all--show-names--url=<URL> <nom>. - --get-color <nom> [<défaut>]
-
Remplacé par
gitconfigget--type=color[--default=<défaut>] <nom>. - --add <nom> <valeur>
-
Remplacé par
gitconfigset--append<nom> <valeur>. - --unset <nom> [<motif-de-valeur>]
-
Remplacé par
gitconfigunset[--value=<motif>] <nom>. - --unset-all <nom> [<motif-de-valeur>]
-
Remplacé par
gitconfigunset[--value=<motif>]--all<nom>. - --rename-section <ancien-nom> <nouveau-nom>
-
Remplacé par
gitconfigrename-section<ancien-nom> <nouveau-nom>. - --remove-section <nom>
-
Remplacé par
gitconfigremove-section<nom>. - -e
- --edit
-
Remplacé par
gitconfigedit.
CONFIGURATION
pager.config n’est respecté que lors de l’énumération de la configuration, c’est-à-dire lors de l’utilisation de list ou de l’un des get qui peuvent retourner plusieurs résultats. Le défaut est d’utiliser un pager.
FICHIERS
Par défaut, git config lira les options de configuration à partir de plusieurs fichiers :
- $(prefix)/etc/gitconfig
-
Fichier de configuration au niveau système.
- $XDG_CONFIG_HOME/git/config
- ~/.gitconfig
-
Fichiers de configuration spécifiques à l’utilisateur. Lorsque la variable d’environnement XDG_CONFIG_HOME n’est pas définie ou est vide, $HOME/.config/ est utilisé comme $XDG_CONFIG_HOME.
Ces fichiers sont également appelés fichiers de configuration "globaux". Si les deux fichiers existent, ils sont lus dans l’ordre donné ci-dessus.
- $GIT_DIR/config
-
Fichier de configuration spécifique au dépôt.
- $GIT_DIR/config.worktree
-
Ceci est optionnel et n’est recherché que si
extensions.worktreeConfigest présent dans $GIT_DIR/config.
Vous pouvez aussi fournir des paramètres de configuration additionnels lorsque vous exécutez une commande git en utilisant l’option -c. Voir git[1] pour plus de détails.
Les options seront lues depuis tous ces fichiers lorsqu’ils sont disponibles. Si le fichier de configuration global ou le fichier de configuration du système sont manquants ou illisibles, ils seront ignorés. Si le fichier de configuration du dépôt est manquant ou illisible, git config se terminera avec un code d’erreur non nul. Un message d’erreur sera produit si le fichier n’est pas lisible, mais pas s’il est manquant.
Les fichiers sont lus dans l’ordre indiqué ci-dessus, la dernière valeur trouvée étant prioritaire sur les valeurs lues précédemment. Lorsque plusieurs valeurs peuvent être concaténées, toutes les valeurs d’une clé dans tous les fichiers seront utilisées.
Par défaut, les options sont seulement écrites dans le fichier de configuration spécifique au dépôt. Notez que cela affecte également les options comme set et unset. git config ne modifiera jamais qu’un seul fichier à la fois.
Vous pouvez limiter les sources de configuration qui sont lues ou écrites en spécifiant le chemin d’un fichier avec l’option --file, ou en spécifiant une portée de configuration avec --system, --global, --local, ou --worktree. Pour en savoir plus, voir OPTIONS ci-dessus.
PORTÉES
Chaque source de configuration relève d’une portée de configuration. Les portées sont les suivantes :
- système
-
$(prefix)/etc/gitconfig
- global
-
$XDG_CONFIG_HOME/git/config
~/.gitconfig
- local
-
$GIT_DIR/config
- arbre-de-travail
-
$GIT_DIR/config.worktree
- commande
-
variables d’environnement GIT_CONFIG_{COUNT,KEY,VALUE} (voir ENVIRONNEMENT ci-dessous)
l’option
-c
À l’exception de commande, chaque portée correspond à une option de ligne de commande : --system, --global, --local, --worktree.
Lors de la lecture d’options, la spécification d’une portée ne lira que les options des fichiers de cette portée. Lors de l’écriture d’options, la spécification d’une portée écrira dans les fichiers de cette portée (au lieu du fichier de configuration spécifique au dépôt). Voir OPTIONS ci-dessus pour une description complète.
La plupart des options de configuration sont respectées quelle que soit la portée dans laquelle elles sont définies, mais certaines options ne sont respectées que dans certaines portées. Consultez la documentation de l’option concernée pour plus de détails.
Configuration protégée
La configuration protégée fait référence aux portées système, global et commande. Pour des raisons de sécurité, certaines options ne sont respectées que lorsqu’elles sont spécifiées en configuration protégée, et ignorées dans le cas contraire.
Git traite ces portées comme si elles étaient contrôlées par l’utilisateur ou un administrateur de confiance. Ceci est dû au fait qu’un attaquant qui contrôle ces portées peut causer des dommages substantiels sans utiliser Git, il est donc supposé que l’environnement de l’utilisateur protège ces portées contre les attaquants.
ENVIRONNEMENT
- GIT_CONFIG_GLOBAL
- GIT_CONFIG_SYSTEM
-
Prendre la configuration à partir des fichiers donnés au lieu de la configuration globale ou au niveau du système. Voir git[1] pour plus de détails.
- GIT_CONFIG_NOSYSTEM
-
Si l’on veut éviter de lire les paramètres du fichier $(prefix)/etc/gitconfig du système. Voir git[1] pour plus de détails.
Voir aussi FICHIERS.
- GIT_CONFIG_COUNT
- GIT_CONFIG_KEY_<n>
- GIT_CONFIG_VALUE_<n>
-
Si GIT_CONFIG_COUNT est défini comme un nombre positif, toutes les paires d’environnement GIT_CONFIG_KEY_<n> et GIT_CONFIG_VALUE_<n> jusqu’à ce nombre seront ajoutées à la configuration d’exécution du processus. Les paires de configurations sont indexées à zéro. Toute clé ou valeur manquante est traitée comme une erreur. Un GIT_CONFIG_COUNT vide est traité de la même manière que GIT_CONFIG_COUNT=0, c’est-à-dire qu’aucune paire n’est traitée. Ces variables d’environnement remplaceront les valeurs dans les fichiers de configuration, mais seront remplacées par toute option explicite passée via
git-c.C’est utile dans les cas où vous voulez lancer plusieurs commandes git avec une configuration commune mais ne pouvez pas dépendre d’un fichier de configuration, par exemple lorsque vous écrivez des scripts.
- GIT_CONFIG
-
Si aucune option
--filen’est fournie àgitconfig, utiliser le fichier donné parGIT_CONFIGcomme s’il était fourni via--file. Cette variable n’a aucun effet sur les autres commandes Git, et est surtout destinée à assurer une compatibilité historique ; il n’y a généralement aucune raison de l’utiliser à la place de l’option--file.
EXEMPLES
Avec un .git/config comme ceci :
# # C'est le fichier de configuration, et # un caractère '#' ou ';' indique # un commentaire # ; variables de base [core] ; ne pas faire confiance au mode des fichiers filemode = false ; Notre algorithme de diff [diff] external = /usr/local/bin/diff-wrapper renames = true ; paramètres du proxy [core] gitproxy=proxy-command for kernel.org gitproxy=default-proxy ; pour tout le reste ; HTTP [http] sslVerify [http "https://un5xm8y0g75vzbnutz18xd8.julianrbryant.com"] sslVerify = false cookieFile = /tmp/cookie.txt
vous pouvez mettre le filemode à true avec
% git config set core.filemode true
Les entrées hypothétiques de la commande proxy ont en fait un postfix pour discerner l’URL à laquelle elles s’appliquent. Voici comment changer l’entrée pour kernel.org en "ssh".
% git config set --value='for kernel.org$' core.gitproxy '"ssh" for kernel.org'
Cela permet de s’assurer que seule la paire clé/valeur de kernel.org est remplacée.
Pour supprimer l’entrée pour les renommages, faites
% git config unset diff.renames
Si vous voulez supprimer une entrée pour un multivar (comme core.gitproxy ci-dessus), vous devez fournir une regex correspondant à la valeur d’exactement une ligne.
Pour demander la valeur d’une clef donnée, faites
% git config get core.filemode
ou, pour interroger un multivar :
% git config get --value="for kernel.org$" core.gitproxy
Si vous voulez connaître toutes les valeurs d’un multivar, faites :
% git config get --all --show-names core.gitproxy
Si vous aimez vivre dangereusement, vous pouvez remplacer tout core.gitproxy par une nouvelle valeur avec
% git config set --all core.gitproxy ssh
Cependant, si vous voulez seulement remplacer la ligne pour le proxy par défaut, c’est-à-dire celui sans postfixe "for …", faites quelque chose comme ceci :
% git config set --value='! for ' core.gitproxy ssh
Pour ne faire correspondre que les valeurs comportant un point d’exclamation, vous devez
% git config set --value='[!]' section.key value
Pour ajouter un nouveau proxy, sans modifier aucun des proxy existants, utilisez
% git config set --append core.gitproxy '"proxy-command" for exemple.com'
Un exemple d’utilisation de la couleur personnalisée de la configuration dans votre script :
#!/bin/sh
WS=$(git config get --type=color --default="blue reverse" color.diff.whitespace)
RESET=$(git config get --type=color --default="reset" "")
echo "${WS}votre color d'espace et bleu sont échangées${RESET}"
Pour les URLs dans https://un5xm8y0g75vzbnutz18xd8.julianrbryant.com, http.sslVerify est mis à false, alors qu’il est mis à true pour toutes les autres :
% git config get --type=bool --url=https://un5h2e2gx1fvyyc2pm1g.julianrbryant.com http.sslverify true % git config get --type=bool --url=https://un5pe8tpp3td6nj4w39ya7zq.julianrbryant.com http.sslverify false % git config get --url=https://un5xm8y0g75vzbnutz18xd8.julianrbryant.com http http.cookieFile /tmp/cookie.txt http.sslverify false
FICHIER DE CONFIGURATION
Le fichier de configuration Git contient un certain nombre de variables qui affectent le comportement des commandes Git. Les fichiers .git/config et éventuellement config.worktree (voir la section "FICHIER DE CONFIGURATION" de git-worktree[1]) dans chaque dépôt sont utilisés pour stocker la configuration de ce dépôt, et $HOME/.gitconfig est utilisé pour stocker une configuration par utilisateur comme valeurs de repli pour le fichier .git/config. Le fichier /etc/gitconfig peut être utilisé pour stocker une configuration par défaut pour l’ensemble du système.
Les variables de configuration sont utilisées à la fois par la plomberie Git et les commandes de porcelaine. Les variables sont divisées en sections, dans lesquelles le nom de variable entièrement qualifié de la variable elle-même est le dernier segment séparé par un point et le nom de la section est tout ce qui précède le dernier point. Les noms de variables sont insensibles à la casse, n’autorisent que les caractères alphanumériques et -, et doivent commencer par un caractère alphabétique. Certaines variables peuvent apparaître plusieurs fois ; on dit alors que la variable est multivaluée.
Syntaxe
La syntaxe est assez souple et permissive. Les caractères d’espaces blancs, qui dans ce contexte sont les caractères espace (SP) et les tabulations horizontales (HT) sont généralement ignorés. Les caractères # et ; commencent les commentaires à la fin de la ligne. Les lignes blanches sont ignorées.
Le fichier se compose de sections et de variables. Une section commence par le nom de la section entre crochets et se poursuit jusqu’au début de la section suivante. Les noms de section ne sont pas sensibles à la casse. Seuls les caractères alphanumériques, - et . sont autorisés dans les noms de section. Chaque variable doit appartenir à une section, ce qui signifie qu’il doit y avoir un en-tête de section avant le premier paramétrage d’une variable.
Les sections peuvent être divisées en sous-sections. Pour commencer une sous-section, mettez son nom entre guillemets, séparé du nom de la section par un espace, dans l’en-tête de la section, comme dans l’exemple ci-dessous :
[section "sous-section"]
Les noms de sous-sections sont sensibles à la casse et peuvent contenir n’importe quel caractère, à l’exception du saut de ligne et de l’octet nul. Les guillemets " et les barres obliques inverses peuvent être inclus en les échappant sous la forme \" et \\, respectivement. Les barres obliques inverses précédant d’autres caractères sont supprimées lors de la lecture ; par exemple, \t est lu comme t et \0 est lu comme 0. Les en-têtes de section ne peuvent pas s’étendre sur plusieurs lignes. Les variables peuvent appartenir directement à une section ou à une sous-section donnée. Vous pouvez avoir une [section] si vous avez [section sous-section], mais vous n’en avez pas besoin.
Il existe également une syntaxe [section.sous-section] obsolète. Avec cette syntaxe, le nom de la sous-section est converti en minuscules et est également comparé en tenant compte de la casse. Ces noms de sous-sections suivent les mêmes restrictions que les noms de sections.
Toutes les autres lignes (et le reste de la ligne après l’en-tête de section) sont reconnues comme des variables de réglage, sous la forme nom = valeur (ou simplement nom, qui est un raccourci pour dire que la variable est le booléen « vrai »). Les noms des variables sont insensibles à la casse, n’autorisent que les caractères alphanumériques et -, et doivent commencer par un caractère alphabétique.
Les caractères d’espace blanc entourant le nom, = et valeur sont supprimés. Les caractères internes de l’espace blanc dans la valeur sont conservés verbatim. Les commentaires commençant par # ou ; et s’étendant jusqu’à la fin de la ligne sont supprimés. Une ligne qui définit une valeur peut être poursuivie jusqu’à la ligne suivante en la finissant avec un backslash (\) ; les caractères backslash et de fin de ligne sont supprimés.
Si <valeur> doit contenir des caractères d’espace blancs au début ou à la fin, elle doit être citée en double guillemet (" ). À l ' intérieur des doubles guillemets, les caractères guillemet (") et barre inversée (\) doivent être échappés : utilisez \" pour " et \\ pour \.
Les séquences d’échappement suivantes (en plus de \" et \\) sont reconnues : \n pour le caractère de retour à la ligne (NL), \t pour la tabulation horizontale (HT, TAB) et \b pour l’espacement arrière (BS). Les autres séquences d’échappement de caractères (y compris les séquences d’échappement octales) ne sont pas valides.
Inclusions
Les sections include et includeIf vous permettent d’inclure des directives de configuration provenant d’une autre source. Ces sections se comportent de manière identique, à l’exception des sections includeIf qui peuvent être ignorées si leur condition n’est pas évaluée comme vraie ; voir "Inclusions conditionnelles" ci-dessous.
Vous pouvez inclure un fichier de configuration à partir d’un autre en définissant la variable spéciale include.path (ou includeIf.*.path) au nom du fichier à inclure. La variable prend un nom de chemin comme valeur, et est soumise à l’expansion tilde. Ces variables peuvent être données plusieurs fois.
Le contenu du fichier inclus est inséré immédiatement, comme s’il avait été trouvé à l’endroit de la directive d’inclusion. Si la valeur de la variable est un chemin relatif, le chemin est considéré comme relatif au fichier de configuration dans lequel la directive include a été trouvée. Voir ci-dessous pour des exemples.
Inclusions conditionnelles
Vous pouvez inclure conditionnellement un fichier de configuration provenant d’un autre fichier en définissant une variable includeIf.<condition>.path au nom du fichier à inclure.
La condition commence par un mot-clé suivi d’un deux-points et de quelques données dont le format et la signification dépendent du mot-clé. Les mots-clés pris en charge sont les suivants :
-
gitdir -
Les données qui suivent le mot-clé gitdir`et deux points sont utilisées comme modèle de motif glob. Si l'emplacement du répertoire `.git correspond au motif, la condition d’inclusion est remplie.
L’emplacement de .git peut être découvert automatiquement ou provenir de la variable d’environnement
$GIT_DIR. Si le dépôt est découvert automatiquement via un fichier .git (par exemple à partir de sous-modules ou d’un arbre de travail lié), l’emplacement du .git sera l’emplacement final où se trouve le répertoire .git, et non pas où le fichier .git est.Le motif peut contenir des caractères génériques de globbing standard et deux autres,
**/et/**, qui peuvent correspondre à plusieurs composants de chemin d’accès. Veuillez consulter gitignore[5] pour plus de détails. Pour plus de commodité :-
Si le motif commence par
~/,~sera remplacé par le contenu de la variable d’environnementHOME. -
Si le motif commence par '
./, il est remplacé par le répertoire contenant le fichier de configuration actuel. -
Si le motif ne commence pas par
~/,./ou/,**/sera automatiquement ajouté en préfixe. Par exemple, le motiffoo/bardevient**/foo/baret correspondra àtout/chemin/vers/foo/bar. -
Si le motif se termine par
/,**sera automatiquement ajouté. Par exemple, le motiffoo/devientfoo/**. En d’autres termes, il correspond àfooet à tout ce qui se trouve à l’intérieur, de manière récursive.
-
-
gitdir/i -
C’est la même chose que
gitdirsauf que la correspondance se fait sans tenir compte de la casse (par exemple sur les systèmes de fichiers insensibles à la casse) -
onbranch -
Les données qui suivent le mot-clé
onbranchet deux points sont considérées comme un motif avec des jokers standard et deux autres,**/et/**, qui peuvent correspondre à plusieurs composants de chemin. Si nous nous trouvons dans un arbre de travail où le nom de la branche actuellement extraite correspond au motif, la condition d’inclusion est remplie.Si le motif se termine par
/,**sera automatiquement ajouté. Par exemple, le motiffoo/devientfoo/**. En d’autres termes, il correspond à toutes les branches qui commencent parfoo/. Ceci est utile si vos branches sont organisées de manière hiérarchique et que vous souhaitez appliquer une configuration à toutes les branches de cette hiérarchie. -
hasconfig:remote.*.url -
Les données qui suivent ce mot-clé et deux points sont considérées comme un motif avec des jokers standard et deux autres,
**/et/**, qui peuvent correspondre à plusieurs composants. La première fois que ce mot-clé est vu, le reste des fichiers de configuration sera analysé pour trouver des URL distants (sans appliquer aucune valeur). S’il exist au moins une URL distante qui correspond au motif, la condition d’inclusion est remplie.Les fichiers inclus par cette option (directement ou indirectement) ne sont pas autorisés à contenir des URL distants.
Notez que contrairement aux autres conditions includeIf, la résolution de cette condition repose sur des informations qui ne sont pas encore connues au moment de la lecture de la condition. Un cas d’utilisation typique est que cette option est présente dans une configuration de niveau système ou global, et que l’URL distante se trouve dans une configuration de niveau local ; d’où la nécessité d’effectuer un balayage préalable lors de la résolution de cette condition. Afin d’éviter le problème de la poule et de l’œuf, dans lequel les fichiers potentiellement inclus peuvent affecter le fait que ces fichiers soient potentiellement inclus ou non, Git brise le cycle en interdisant à ces fichiers d’affecter la résolution de ces conditions (donc en leur interdisant de déclarer des URL distantes).
Quant au nom de ce mot-clé, c’est pour des raisons de compatibilité avec un schéma de nommage qui supporte des conditions d’inclusion plus basées sur des variables, mais actuellement Git ne supporte que le mot-clé exact décrit ci-dessus.
Quelques notes supplémentaires sur la correspondance via gitdir et gitdir/i :
-
Les liens symboliques dans
$GIT_DIRne sont pas résolus avant la correspondance. -
Les versions symlink et realpath des chemins seront comparées en dehors de
$GIT_DIR. Par exemple, si ~/git est un lien symbolique vers /mnt/stockage/git,gitdir:~/gitetgitdir:/mnt/stockage/gitcorrespondront tous deux.Ce n’était pas le cas dans la version initiale de cette fonctionnalité dans la v2.13.0, qui ne correspondait qu’à la version realpath. La configuration qui veut être compatible avec la version initiale de cette fonctionnalité doit soit spécifier uniquement la version realpath, soit les deux versions.
-
Notez que "../" n’est pas spécial et correspondra littéralement, ce qui est peu probablement ce que vous voulez.
Exemple
# Variables core [core] ; Ne pas se fier au modes des fichiers filemode = false # Notre algorithme de diff [diff] external = /usr/local/bin/diff-wrapper renames = true [branch "devel"] remote = origin merge = refs/heads/devel # Réglages proxy [core] gitProxy="ssh" for "kernel.org" gitProxy=default-proxy ;pour le reste [include] path = /chemin/vers/foo.inc ; inclure par chemin absolu path = foo.inc ; trouver "foo.inc" relativement au fichier actuel path = ~/foo.inc ; trouver "foo.inc" dans votre répertoire `$HOME` ; inclure si $GIT_DIR est /chemin/vers/foo/.git [includeIf "gitdir:/chemin/vers/foo/.git"] path = /chemin/vers/foo.inc ; inclure tous les dépôts dans /chemin/vers/groupe [includeIf "gitdir:/chemin/vers/groupe"] path = /chemin/vers/foo.inc ; inclure pour tous les dépôts à l'intérieur de $HOME/vers/groupe [includeIf "gitdir:~/vers/groupe/"] path = /chemin/vers/foo.inc les chemins relatifs sont toujours relatifs au fichier ; incluant (si la condition est vraie) ; leur emplacement n'est pas ; affecté par la condition [includeIf "gitdir:/chemin/vers/groupe/"] path = foo.inc ; n'inclure que si nous sommes dans un arbre de travail où foo-branch ; actuellement extrait [includeIf "onbranch:foo-branch"] path = foo.inc ; inclure seulement si un fichier distant avec l'URL donnée existe (note ; qu'une telle URL peut être fournie plus tard dans un fichier ou dans un fichier ; ou dans un fichier lu après la lecture de ce fichier, comme dans cet exemple). [includeIf "hasconfig:remote.*.url:https://un5mkq9urycyna8.julianrbryant.com/**"] path = foo.inc [remote "origin"] url = https://un5mkq9urycyna8.julianrbryant.com/git
Valeurs
Les valeurs de nombreuses variables sont traitées comme une simple chaîne de caractères, mais il existe des variables qui prennent des valeurs de types spécifiques et il existe des règles quant à leur orthographe.
- booléen
-
Lorsqu’une variable prend une valeur booléenne, de nombreux synonymes sont acceptés pour vrai et faux ; ils sont tous insensibles à la casse.
- true
-
Les littéraux booléens pour vrai sont
yes,on,trueet1. De plus, une variable définie sans=<valeur> est considérée comme vraie. - faux
-
Les littéraux booléens faux sont
no,off,false,0et la chaîne vide.Lors de la conversion d’une valeur sous sa forme canonique en utilisant le spécificateur de type
--type=bool, git config s’assurera que la sortie est "true" ou "false" (écrit en minuscules).
- Entier
-
La valeur de nombreuses variables qui spécifient différentes tailles peut être suffixée par
k,M, … pour signifier « multiplier le nombre par 1024 », « par 1024x1024 », etc. - color
-
La valeur d’une variable qui prend une couleur est une liste de couleurs (au plus deux, une pour le premier plan et une pour l’arrière-plan) et les attributs (autant que vous le souhaitez), séparés par des espaces.
Les couleurs de base acceptées sont
normal,black,red,green,yellow,blue,magenta,cyan,whiteetdefault. La première couleur donnée est le premier plan ; la seconde est l’arrière-plan. Toutes les couleurs de base, sauf la couleurnormaletdefault, ont une variante claire qui peut être spécifiée en préfixant la couleur parbright, commebrightred.La couleur
normalne modifie pas la couleur. C’est la même chose qu’une chaîne vide, mais elle peut être utilisée comme couleur de premier plan lorsqu’on spécifie une couleur d’arrière-plan seule (par exemple, "normal red").La couleur
defaultréinitialise explicitement la couleur par défaut du terminal, par exemple pour spécifier un fond clair. Bien que cela varie d’un terminal à l’autre, ce n’est généralement pas la même chose que de définir un "blanc noir".Les couleurs peuvent également être données en tant que nombres entre 0 et 255 ; ceux-ci utilisent le mode ANSI 256 couleurs (mais notez que certains terminaux ne peuvent pas prendre en charge cela). Si votre terminal le prend en charge, vous pouvez également spécifier des valeurs RGB 24 bits en hexadécimal, comme
#ff0ab3, ou des valeurs RGB de 12 bits comme#f1b, qui est équivalent à la couleur 24 bits#ff11bb.Les attributs acceptés sont
bold,dim,ul,blink,reverse,italic, etstrike(pour les lettres barrées ou "surlignées"). La position de tout attribut par rapport aux couleurs (avant, après ou entre les deux) n’a pas d’importance. Des attributs spécifiques peuvent être désactivés en les préfixant parnoouno-(par exemple,noreverse,no-ul, etc.).Le pseudo-attribut
resetréinitialise toutes les couleurs et tous les attributs avant d’appliquer la coloration spécifiée. Par exemple,resetgreenaura pour résultat un avant-plan vert et un arrière-plan par défaut sans aucun attribut actif.Une chaîne de couleur vide ne produit aucun effet de couleur. Cela peut être utilisé pour éviter de colorer des éléments spécifiques sans désactiver complètement la couleur.
Pour les étiquettes de couleur prédéfinies de git, les attributs sont censés être réinitialisés au début de chaque élément de la sortie colorée. Ainsi, mettre
color.decorate.branchàblackpeindra le nom de cette branche en un simpleblack, même si la chose précédente sur la même ligne de sortie (par exemple, ouvrir une parenthèse avant la liste des noms de branches dans la sortie delog--decorate) est mise à être peinte avecboldou un autre attribut. Cependant, les formats de log personnalisés peuvent faire une coloration plus compliquée et plus stratifiée, et les formes inversées peuvent être utiles dans ce cas. - nom-de-chemin
-
Une variable qui prend la valeur d’un nom de chemin peut recevoir une chaîne de caractères commençant par "
~/" ou "~user/", et l’expansion tilde habituelle se fait sur une telle chaîne :~/est développée à la valeur de$HOME, et~user/au répertoire personnel de l’utilisateur spécifié.Si un chemin commence par
%(prefix)/, le reste est interprété comme un chemin relatif au "préfixe d’exécution" de Git, c’est-à-dire relatif à l’emplacement où Git lui-même a été installé. Par exemple,%(prefix)/bin/fait référence au répertoire dans lequel se trouve l’exécutable Git lui-même. Si Git a été compilé sans le support des préfixes d’exécution, le préfixe compilé sera substitué à la place. Dans le cas peu probable où un chemin littéral doit être spécifié et ne doit pas être étendu, il doit être préfixé par./, comme ceci : ./%(préfixe)/bin.Si la variable de configuration est préfixée avec ``:(optionnel)`, elle est traitée comme si elle n’existe pas, si le chemin nommé n’existe pas.
Variables
Notez que cette liste n’est pas exhaustive et n’est pas nécessairement complète. Pour les variables spécifiques à une commande, vous trouverez une description plus détaillée dans la page du manuel appropriée.
D’autres outils liés à git peuvent utiliser et utilisent leurs propres variables. Lorsque vous inventez de nouvelles variables à utiliser dans votre propre outil, assurez-vous que leurs noms n’entrent pas en conflit avec ceux qui sont utilisés par Git lui-même et d’autres outils populaires, et décrivez-les dans votre documentation.
-
add.ignoreErrors -
add.ignore-errors(obsolète) -
Indique à
gitaddde continuer à ajouter des fichiers lorsque certains fichiers ne peuvent pas être ajoutés en raison d’erreurs d’indexation. Équivalent à l’option--ignore-errorsde git-add[1].add.ignore-errorsest obsolète, car il ne suit pas la convention de nom habituelle pour les variables de configuration.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
branch.autoSetupMerge -
Dis à
gitbranch,gitswitchet git checkout`de créer des nouvelles branches de manière à ce que git-pull[1] fusionnera de manière appropriée depuis la branche de départ. Notez que même si cette option n'est pas définie, ce comportement peut être choisi branche par branche en utilisant les options `--track et--no-track. Cette option vaut par défauttrue. Les paramètres valides sont :-
false -
aucune configuration automatique n’est faite
-
true -
la configuration automatique est faite lorsque le point de départ est une branche de suivi à distance
-
always -
la configuration automatique est faite lorsque le point de départ est soit une branche locale ou une branche de suivi à distance
-
inherit -
si le point de départ a une configuration de suivi, elle est copiée dans la nouvelle branche
-
simple -
la configuration automatique n’est effectuée que lorsque le point de départ est une branche de suivi à distance et que la nouvelle branche a le même nom que la branche distante.
-
-
branch.autoSetupRebase -
Quand une nouvelle branche est créée avec
gitbranch,gitswitchougitcheckoutqui suit une autre branche, cette variable dit à Git de mettre en place le rebasage lors du tirage au lieu de la fusion (voirbranch.<nom>.rebase). Les paramètres valides sont :-
never -
rebase n’est jamais automatiquement définie à
true. -
local -
rebase est définie à vrai pour les branches suivies d’autres branches locales.
-
remote -
rebase est définie à
truepour les branches suivies des branches de suivi à distance. -
always -
rebase sera réglé à
truepour toutes les branches de suivi.
Voir
branch.autoSetupMergepour plus de détails sur la façon de mettre en place une branche pour suivre une autre branche. Cette option vaut par défautnever. -
-
branch.sort -
Cette variable contrôle l’ordre de tri des branches lorsqu’elles sont affichées par git-branch[1]. Sans l’option
--sort=<valeur>, la valeur de cette variable comme valeur par défaut. Voir les noms de champs de git-for-each-ref[1] pour les valeurs valides. -
branch.<nom>.remote -
Sur la branche <nom>, il dit à
gitfetchetgitpushquel distant duquel récupérer ou sur lequel pousser. Le distant sur lequel pousser peut être remplacée parremote.pushDefault(pour toutes les branches). Le distant sur lequel pousser, pour la branche actuelle, peut être encore surchargé parbranch.<nom>.pushRemote. Si aucun distant n’est configurée, ou si vous n’êtes pas sur une branche et qu’il y a plus d’un distant défini dans le dépôt, il vaut par défautoriginpour la récupération etremote.pushDefaultpour la poussée. En outre,.(un point) est le dépôt local actuel (un dépôt point), voir la dernière note debranch.<nom>.mergeci-dessous. -
branch.<nom>.pushRemote -
Quand la branche <nom> est extraite, surcharge
branch.<nom>.remotepour pousser. Il remplace aussiremote.pushDefaultpour pousser depuis la branche <nom>. Lorsque vous tirez d’un endroit (p. ex. votre amont) et poussez vers un autre endroit (p. ex. votre propre dépôt de publication), vous voudriez définirremote.pushDefaultpour spécifier le distant où pousser pour toutes les branches, et utiliser cette option pour la surcharger pour une branche spécifique. -
branch.<nom>.merge -
Définit, avec
branch.<nom>.remotela branche amont de la branche donnée. Cela indique àgitfetch/gitpull/gitrebasequelle branche fusionner et peut aussi affectergitpush(voirpush.default). Quand dans la branche <nom>, cela indique àgitfetchle spéc de réf par défaut à marquer pour la fusion dansFETCH_HEAD. La valeur est manipulée comme la partie distante d’une spéc de réf, et doit correspondre à une réf qui est récupérée depuis un distant donné parbranch.<nom>.remote. Les informations de fusion sont utilisées pargitpull(qui appelle d’abordgitfetch) pour rechercher la branche par défaut à fusionner. Sans cette option,gitpullfusionne par défaut le premier spéc de réf récupéré. Spécifiez plusieurs valeurs pour obtenir une fusion octopus. Si vous souhaitez configurergitpullafin qu’il fusionne dans <nom> depuis une autre branche dans le dépôt local, vous pouvez pointer branch.<nom>.merge`sur la branche souhaitée, et utiliser le chemin relatif `. (un point) pourbranch.<nom>.remote. -
branch.<nom>.mergeOptions -
Définir les options par défaut pour la fusion dans la branche <nom>. La syntaxe et les options prises en charge sont les mêmes que celles de git-merge[1], mais les valeurs d’options contenant des espaces ne sont actuellement pas prises en charge.
-
branch.<nom>.rebase -
Quand cela est vrai, rebaser la branche <nom> au sommet de la branche récupérée, au lieu de fusionner la branche par défaut depuis le distant par défaut quand
gitpullest exécuté. Voirpull.rebasepour ce faire d’une manière non spécifique à une branche.Avec
merges(ou justem), passer l’option--rebase-mergesàgitrebasede sorte que les commits de fusion locaux soient inclus dans le rebasage (voir git-rebase[1] pour plus de détails).Lorsque la valeur est
interactive(ou simplementi), le rebasage est exécuté en mode interactif.NOTE : il s’agit d’une opération potentiellement dangereuse ; ne l’utilisez pas à moins que vous ne compreniez les implications (voir git-rebase[1] pour les détails).
-
branch.<nom>.description -
Description de la branche, peut être modifiée avec
gitbranch--edit-description. La description de la branche est automatiquement ajoutée à la lettre d’introduction deformat-patchourequest-pull.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
checkout.defaultRemote -
Quand vous lancez
gitcheckout<quelquechose> ougitswitch<quelquechose> et vous n’avez qu’un seul distant , la commande revenir implicitement à extraire et suivre, p.ex.origin/<quelquechose>. Cela cesse de fonctionner dès que vous avez plus d’un distant avec une référence <quelquechose>. Ce réglage permet de définir le nom d’un distant préféré qui devrait toujours gagner quand il s’agit de lever les ambiguïtés. Le cas d’utilisation typique est de définir ceci àorigine.Actuellement, cela est utilisé par git-switch[1] et git-checkout[1] lorsque
gitcheckout<quelquechose> ougitswitch<quelquechose> extraira la branche <quelquechose> sur un autre distant, et par git-worktree[1] lorsquegitworktreeaddse réfère à une branche distante. Ce paramètre peut être utilisé pour d’autres commandes similaire à `checkout`ou fonctionnalités à l’avenir. -
checkout.guess -
Fournit la valeur par défaut pour l’option
--guessou--no-guessdansgitcheckoutetgitswitch. Voir git-switch[1] et git-checkout[1]. -
checkout.workers -
Le nombre de travailleurs parallèles à utiliser lors de la mise à jour de l’arbre de travail. La valeur par défaut est un, soit une exécution séquentielle. Si la valeur est inférieure à un, Git utilisera autant de travailleurs que le nombre de cœurs logiques disponibles dans le microprocesseur. Ce réglage et ‘checkout.thresholdForParallelism’ affectent toutes les commandes qui effectuent une extraction, par exemple, checkout, clone, reset, sparse-checkout, etc.
NoteL’extraction parallèle offre généralement une meilleure performance pour les dépôts situés sur SSD ou sur NFS. Pour les dépôts sur les disques rotatifs et/ou des machine avec un petit nombre de cœurs, l’extraction séquentielle par défaut fonctionne souvent mieux. La taille et le niveau de compression d’un dépôt peuvent également influencer le fonctionnement de la version parallèle. -
checkout.thresholdForParallelism -
Lors de l’exécution de l’extraction parallèle avec un petit nombre de fichiers, le coût de lancer des sous-processus et de la communication inter-processus pourrait dépasser les gains de parallélisation. Ce paramètre vous permet de définir le nombre minimum de fichiers pour lesquels la commande parallèle devrait être tentée. La valeur par défaut est 100.
|
Warning
|
Missing See original version for this content. |
-
clone.defaultRemoteName -
Le nom du distant à créer lors du clonage d’un dépôt. Par défaut
origin. Il peut être surchargé en passant l’option de ligne de commande--originà git-clone[1]. -
clone.rejectShallow -
Rejeter le clonage d’un dépôt s’il s’agit d’un dépôt superficiel ; cela peut être surchargé en passant l’option
--reject-shallowsur la ligne de commande. Voir git-clone[1] -
clone.filterSubmodules -
Si un filtre de clone partiel est fourni (voir
--filterdans git-rev-list[1]) et--recurse-submodulesest utilisé, appliquer également le filtre aux sous-modules.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
commit.cleanup -
Ce paramètre surcharge la valeur par défaut de l’option
--cleanupdansgitcommit. See git-commit[1] for details. Changer la valeur par défaut peut être utile lorsque vous voulez toujours garder des lignes qui commencent par le caractère de commentaire (core.commentChar, par défaut#) dans votre message de journal, auquel cas vous feriezgitconfigcommit.cleanupwhitespace(notez que vous devrez supprimer les lignes d’aide qui commencent par le caractère de commentaire dans le modèle de journal de commit vous-même, si vous le faites). -
commit.gpgSign -
Un booléen pour spécifier si tous les commits doivent être signés GPG. L’utilisation de cette option lors d’opérations telles que le rebasage peut entraîner un grand nombre de signature de commits. Il peut être pratique d’utiliser un agent pour éviter de taper votre mot de passe GPG plusieurs fois.
-
commit.status -
Un booléen pour activer/désactiver l’inclusion d’information de status dans le modèle de message de validation lors de l’utilisation d’un éditeur pour préparer le message de validation. Valeur par défaut à
true. -
commit.template -
Spécifier le nom de chemin d’un fichier à utiliser comme modèle pour de nouveaux messages de commit.
-
commit.verbose -
Un booléen ou un int pour préciser le niveau de verbosité avec
gitcommit. See git-commit[1] for details.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
diff.autoRefreshIndex -
Lors de l’utilisation de
gitdiffpour comparer avec les fichiers d’arbres de travail, ne pas considérer les modifications des statistiques seulement comme modifiées. Au lieu de cela, lancer silencieusementgitupdate-index--refreshpour mettre à jour l’information de stat cachée pour les chemins dont le contenu dans l’arbre de travail correspond au contenu dans l’index. Cette option est par défaut vraie. Notez que cela n’affecte que la commande porcelainegitdiff, et pas les commandesdiffde niveau inférieur commegitdiff-files. -
diff.dirstat -
Une liste séparée par virgules des paramètres
--dirstatspécifiant le comportement par défaut de l’option--dirstatpour git-diff[1] et compagnie. Les valeurs par défaut peuvent être surchargées sur la ligne de commande (en utilisant--dirstat=<param>,...). Les valeurs par défaut (lorsqu’elles ne sont pas modifiée pardiff.dirstat) sontchanges,noncumulative,3. Les paramètres suivants sont disponibles :-
changes -
Calculer les valeurs de dirstat en comptant les lignes supprimées de la source ou ajoutées dans la destination. Ceci ignore la quantité de purs mouvements de code dans un fichier. En d’autres termes, le réarrangement de lignes dans un fichier n’est pas compté autant que les autres modifications. C’est le comportement par défaut quand aucun paramètre n’est fourni.
-
lines -
Calculer les valeurs dirstat en faisant l’analyse diff normal par ligne, et en additionnant les totaux de lignes ajoutées/supprimées. (Pour les fichiers binaires, compter plutôt les sections de 64 octets, puisque les fichiers binaires n’ont pas de concept de ligne). C’est un comportement de
--dirstatplus onéreux que le comportementchanges, mais il compte les lignes réarrangées dans un fichier autant que les autres modifications. La sortie résultante est cohérente avec ce que vous obtiendriez avec d’autres options--*stat. -
files -
Calculer les valeurs dirstat en comptant le nombre de fichiers changés. Chaque fichier modifié compte de façon égale dans l’analyse dirstat. C’est le comportement
--dirstatle moins cher en termes de calcul, puisqu’il n’a pas du tout besoin d’analyser le contenu du fichier. -
cumulative -
Compter les modifications dans un répertoire enfant pour le répertoire parent. Notez qu’en utilisant
cumulative, la somme des pourcentages constatés peut dépasser 100 %. Le comportement par défaut (non cumulatif) peut être spécifié avec le paramètrenoncumulative. - <limite>
-
Un paramètre entier qui spécifie un pourcentage limite (3% par défaut). Les répertoires contribuant moins que ce pourcentage de modifications ne sont pas affichés dans la sortie.
Exemple : ce qui suit va compter les fichiers modifiés, tout en ignorant les répertoires qui contiennent moins de 10 % de la quantité totale de fichiers modifiés et en accumulant les totaux des répertoires enfants dans les répertoires parents :
--dirstat=files,10,cumulative. -
-
diff.statNameWidth -
Limiter la largeur de la partie nom de fichier dans la sortie de
--stat. Si défini, s’applique à toutes les commandes générant une sortie--statsaufformat-patch. -
diff.statGraphWidth -
Limiter la largeur de la partie graphique dans la sortie
--stat. Si défini, s’applique à toutes les commandes générant une sortie--statsaufformat-patch. -
diff.context -
Générer des diffs avec <n> lignes de contexte au lieu des trois par défaut. Cette valeur est surchargée par l’option
-U. -
diff.interHunkContext -
Afficher le contexte entre des sections de diff, jusqu’au nombre spécifié de lignes, fusionnant de ce fait les sections qui sont proches. Cette valeur sert de valeur par défaut pour l’option de ligne de commande
--inter-hunk-context. -
diff.external -
Si cette variable de configuration est définie, la génération diff n’est pas effectuée en utilisant la machinerie de diff interne, mais en utilisant la commande donnée. Peut être remplacé par la variable d’environnement
GIT_EXTERNAL_DIFF. La commande est appelée avec des paramètres décrits sous "Diffs git" dans git[1]. Remarque : si vous voulez utiliser un programme de diff externe uniquement sur un sous-ensemble de vos fichiers, vous pouvez utiliser gitattributes[5]. -
diff.trustExitCode -
Si cette valeur booléenne est définie à
truealors la commandediff.externaldevrait retourner le code de sortie 0 si elle considère que les fichiers d’entrée sont égaux ou 1 si elle les juge différents, commediff(1). Si la valeur est définie àfalse, qui est la valeur par défaut, alors la commande est censée retourner le code de sortie0indépendamment de l’égalité. Tout autre code de sortie fait que Git signale une erreur fatale. -
diff.ignoreSubmodules -
Définit la valeur par défaut de
--ignore-submodules. Notez que cela n’affecte que la commande porcelainegitdiff, et pas les commandesdiffde niveau inférieur commegitdiff-files.gitcheckoutetgitswitchhonorent également ce réglage lors de l’affichage des modifications non enregistrées. Le régler àalldésactive le résumé par sous-module affiché pargitcommitetgitstatusquandstatus.submoduleSummaryest réglé à moins qu’il soit surchargé en utilisant l’option de ligne de commande--ignore-submodules. Les commandesgitsubmodulene sont pas affectées par ce paramètre. Par défaut, ce paramètre vautuntrackedpour que tous les sous-modules non suivis soient ignorés. -
diff.mnemonicPrefix -
Si elle est définie,
gitdiffutilise une paire de préfixes qui est différente de la normea/etb/selon ce qui est comparé. Lorsque cette configuration est en vigueur, la sortie diff inversée échange également l’ordre des préfixes :-
gitdiff -
compare l'()index et l’abre de travail (w) ;
-
gitdiffHEAD -
compare un (c)ommit avec un arbre de travail ((w)ork tree) ;
-
gitdiff--cached -
compare un (c)ommit et l'(i)ndex ;
-
gitdiffHEAD:<fichier1> <fichier2> -
compare un (o)bjet et une entité arbre de travail((w)ork tree) ;
-
gitdiff--no-index<a> <b> -
compare deux choses non git <a> et <b>.
-
-
diff.noPrefix -
Si défini,
gitdiffne montre aucun préfixe source ou destination. -
diff.srcPrefix -
Si défini,
gitdiffutilise ce préfixe de source. Par défaut,a/. -
diff.dstPrefix -
Si défini,
gitdiffutilise ce préfixe de destination. Par défautb/. -
diff.relative -
Si l’option est définie à
true,gitdiffn’affiche pas les modifications à l’extérieur du répertoire et indique les noms de chemin par rapport au répertoire courant. -
diff.orderFile -
Fichier indiquant comment ordonner des fichiers dans une diff. Voir l’option
-Ode git-diff[1] pour plus de détails. Sidiff.orderFileest un nom de chemin relatif, il est traité comme relatif au sommet de l’arbre de travail. -
diff.renameLimit -
Le nombre de fichiers à considérer dans la partie exhaustive de la détection de copie/renommage ; équivalent à l’option
-ldegitdiff. Si elle n’est pas définie, la valeur par défaut est actuellement 1000. Ce réglage n’a aucun effet si la détection de renommage est désactivée. -
diff.renames -
Quand et comment Git détecte des renommages. Si défini à
false, la détection de renommage est désactivée. Si défini àtrue, la détection de renommage de base est activée . Si défini àcopiesoucopy, Git détectera également les copies. Par défaut àtrue. Notez que cela affecte seulement la porcelainegitdiffcomme git-diff[1] et git-log[1], et non les commandes de niveau inférieur comme git-diff-files[1]. -
diff.suppressBlankEmpty -
Un booléen pour inhiber le comportement standard de l’impression d’un espace avant chaque ligne de sortie vide. Par défaut à
false. -
diff.submodule -
Spécifier le format dans lequel les différences dans les sous-modules sont affichées. Le format
short(court) est utilisé. Ce format n’affiche que le nom des commits du début et de la fin de la plage. Le formatlogliste les commits dans la plage comme le faitsummaryde git-submodule[1]. Le formatdiffaffiche une diff en ligne des modifications dans le sous-module. Vaut par défautshort. -
diff.wordRegex -
Un expression rationnelle étendue POSIX utilisée pour déterminer ce qui est un « mot » lors de l’exécution de calculs de différence mot par mot. Les séquences de caractères qui correspondent à l’expression régulière sont des "mots", tous les autres caractères sont des espaces blancs ignorables.
-
diff.<pilote>.command -
La commande personnalisée de pilote de diff. Voir gitattributes[5] pour plus de détails.
-
diff.<pilote>.trustExitCode -
Si cette valeur booléenne est définie à
true, la commandediff.<pilote>.commanddevrait retourner le code de sortie0si elle considère que les fichiers d’entrée sont égaux ou 1 si elle les considère différents, commediff(1). Si la valeur est définie àfalse, qui est la valeur par défaut, alors la commande est censée retourner le code de sortie0indépendamment de l’égalité. Tout autre code de sortie fait que Git signale une erreur fatale. -
diff.<pilote>.xfuncname -
L’expression rationnelle que le pilote de diff devra utiliser pour reconnaître l’en-tête d’une section. Un motif pré-intégré peut également être utilisé. Voir gitattributes[5] pour les détails.
-
diff.<pilote>.binary -
Réglez cette option à
truepour indiquer au pilote de diff de traiter les fichiers comme binaires. Voir gitattributes[5] pour plus de détails. -
diff.<pilote>.textconv -
La commande que le pilote de diff devra appeler pour générer la version textuelle d’un fichier. Le résultat de la conversion est utilisé pour générer un diff humainement lisible. Voir gitattributes[5] pour les détails.
-
diff.<pilote>.wordRegex -
L’expression rationnelle que le pilote de diff devrait utiliser pour séparer les mots dans une ligne. Voir gitattributes[5] pour plus de détails.
-
diff.<pilote>.cachetextconv -
Réglez cette option à
truepour indiquer au pilote de diff de mettre en les sorties de conversion en texte. Voir gitattributes[5] pour plus de détails. -
diff.indentHeuristic -
Réglez cette option à
false(faux) pour désactiver l’heuristique par défaut qui décale les limites des sections de diff pour rendre les rustines plus faciles à lire. -
diff.algorithm -
Choisir un algorithme de diff. Les variantes sont comme suit :
-
default -
myers -
L’algorithme de diff avide. C’est actuellement celui par défaut.
-
minimal -
Passer plus de temps pour s’assurer que le diff le plus petit possible est produit.
-
patience -
Utiliser l’algorithme « patience diff » pour la génération de rustine.
-
histogram -
Cet algorithme étend l’algorithme patience pour « supporter les éléments communs de faible fréquence ».
-
-
diff.wsErrorHighlight -
Surligner les erreurs d’espace dans les lignes
context(contexte),old(ancien) etnew(nouveau) du diff. Des valeurs multiples sont séparées par des virgules,noneréinitialise les valeurs précédentes,defaultréinitialise la liste ànewetallest un raccourci pourold,new,context. Les erreurs d’espace sont colorés aveccolor.diff.whitespace. L’option de la ligne de commande--ws-error-highlight=<type> surcharge ce réglage. -
diff.colorMoved -
S’il est réglé à un <mode> valide ou à
true, les lignes déplacées dans une diff sont colorées différemment. Pour les détails des modes valides voir--color-moveddans git-diff[1]. S’il est défini simplementtruele mode de couleur par défaut sera utilisé. Quand la valeur estfalse, les lignes déplacées ne sont pas colorées. -
diff.colorMovedWS -
Lorsque les lignes déplacées sont colorées en utilisant par exemple le réglage
diff.colorMoved, cette option contrôle le mode de traitement des espaces. Pour les détails sur les modes valides voir--color-moved-wsdans git-diff[1].
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
fetch.recurseSubmodules -
Cette option contrôle si
gitfetch(et la récupération sous-jacente dansgitpull) va se récupérer récursivement dans les sous-modules peuplés. Cette option peut être définie soit à une valeur booléenne, soit àon-demand. La régler à une valeur booléenne modifie le comportement de la récupération et de tirage pour aller récursivement dans les sous-modules quand elle est àtrueet à ne pas aller récursivement du tout si elle est àfalse. Lorsqu’elle est mise àon-demand, la récupération et le tirage ne seront traités récursivement dans un sous-module peuplé que lorsque son superprojet récupère un commit qui met à jour la référence du sous-module. Par défaut àon-demandou à la valeur desubmodule.recursesi elle est renseignée. -
fetch.fsckObjects -
Si elle est définie à true, git-fetch-pack vérifiera tous les objets récupérés. Voir
transfer.fsckObjectspour indiquer ce qui est vérifié. Par défaut àfalse. Si elle n’est pas définie, la valeur de `transfer.fsckObjects ' est utilisée à la place. -
fetch.fsck.<id-msg> -
Agit comme
fsck.<id-msg>, mais est utilisé par git-fetch-pack[1] au lieu de git-fsck[1]. Voir la documentation defsck.<id-msg> pour les détails. -
fetch.fsck.skipList -
Agit comme
fsck.skipList, mais est utilisé par git-fetch-pack[1] au lieu de git-fsck[1]. Voir la documentation defsck.skipListpour les détails. -
fetch.unpackLimit -
Si le nombre d’objets récupérés lors du transfert natif Git est inférieur à cette limite, les objets seront déballés dans des fichiers d’objets esseulés. Toutefois, si le nombre d’objets reçus est égal ou supérieur à cette limite, le paquet reçu sera stocké comme un fichier paquet, après avoir ajouté toute base delta manquante. Le stockage du paquet à partir d’une poussée peut rendre l’opération de poussée complète plus rapidement, surtout sur les systèmes de fichiers lents. Si elle n’est pas définie, la valeur de
transfer.unpackLimitest utilisée à la place. -
fetch.prune -
Si true, fetch se comportera automatiquement comme si l’option
--pruneétait donnée sur la ligne de commande. Voir aussiremote.<nom>.pruneet la section ÉLAGAGE de git-fetch[1]. -
fetch.pruneTags -
Si la valeur est true, la récupération se comportera automatiquement comme si les spécs de réf
refs/tags/*:refs/tags/*avaient été fournies lors de l’élagage, si ce n’était pas déjà réglé. Cela permet de configurer à la fois cette option etfetch.prunepour maintenir une cartographie de 1=1 avec les réfs en amont. Voir aussiremote.<nom>.pruneTagset la section ÉLAGAGE de git-fetch[1]. -
fetch.all -
Si sa valeur est true, fetch tentera de mettre à jour tous les distants disponibles. Ce comportement peut être surchargé en passant
--no-allou en spécifiant explicitement un ou plusieurs distants à récupérer. Par défaut àfalse. -
fetch.output -
Contrôler comment le statut de mise à jour de ref est affiché. Les valeurs valides sont
fulletcompact. La valeur par défaut estfull. Voir la section SORTIE dans git-fetch[1] pour plus de détails. -
fetch.negotiationAlgorithm -
Contrôler comment les informations sur les commits dans le dépôt local sont envoyées lors de la négociation du contenu du fichier paquet à envoyer par le serveur. Définir à
consecutivepour utiliser un algorithme qui parcourt les commits consécutifs en vérifiant chacun. Réglez-la àskippingpour utiliser un algorithme qui saute les commits dans un effort pour converger plus rapidement, mais peut entraîner un paquet plus important que nécessaire ; ou réglez-la ànooppour ne pas envoyer d’informations du tout, ce qui entraînera presque certainement un paquet plus grand que nécessaire, mais sautera l’étape de négociation. Définissez-la àdefautpour surcharger les réglages faits précédemment et utiliser le comportement par défaut. La valeur par défaut est normalementconsecutive, mais sifeature.experimentalesttrue, alors la valeur par défaut estskipping. Les valeurs inconnues causeront une erreur degitfetch.Voir aussi les options
--negotiate-onlyet--negotiation-tipde git-fetch[1]. -
fetch.showForcedUpdates -
Définissez-la à
falsepour activer--no-show-forced-updatesdans les commandes git-fetch[1] et git-pull[1]. Par défaut àtrue. -
fetch.parallel -
Spécifie le nombre maximal d’opérations de récupération à exécuter en parallèle à un moment (submodules ou distants lorsque l’option
--multiplede git-fetch[1] est en vigueur).Une valeur de 0 donnera une certaine valeur par défaut raisonnable. Si non initialisé, elle est par défaut de 1.
Pour les sous-modules, ce réglage peut être surchargé par le paramètre de configuration
submodule.fetchJobs. -
fetch.writeCommitGraph -
Réglez-le à
truepour écrire un graphe de commit après chaque commandegitfetchqui télécharge un fichier paquet depuis un distant. En utilisant l’option--split, la plupart des exécutions créeront un très petit fichier de graphe de commits sur le ou les fichiers de graphe de commits existants. Parfois, ces fichiers fusionnent et l’écriture peut prendre plus de temps. Ayant un fichier de graphe de commit mis à jour aide à la performance de nombreuses commandes Git, y comprisgitmerge-base,gitpush-f, etgitlog--graph. Par défaut àfalse. -
fetch.bundleURI -
Cette valeur stocke une URI pour le téléchargement Git des données d’objets d’un URI groupé avant d’effectuer une récupération incrémentale depuis le serveur Git d’origine. Cela ressemble à la façon dont l’option
--bundle-urise comporte dans git-clone[1].gitclone--bundle-uriva régler la valeur defetch.bundleURIsi l’URI groupé qui est organisé pour les récupérations supplémentaires.Si vous modifiez cette valeur et que votre dépôt a une valeur pour
fetch.bundleCreationToken, puis retirez cette valeurfetch.bundleCreationTokenavant de récupérer depuis la nouvelle URI de colis. -
fetch.bundleCreationToken -
Lors de l’utilisation de
fetch.bundleURIpour récupérer progressivement à partir d’une liste de colis qui utilise l’heuristique "creationToken", cette valeur de configuration stocke la valeur maximalecreationTokendes paquets téléchargés. Cette valeur est utilisée pour empêcher le téléchargement des colis dans le futur si la ‘creationToken’ annoncée n’est pas strictement plus grande que cette valeur.Les valeurs de jeton de création sont choisies par le fournisseur qui sert l’URI de colis spécifique. Si vous modifiez l’URI à
fetch.bundleURI,alorsassurez-vousdesupprimerlavaleurpourlaconfigurationfetch.bundleCreationTokenavant de récupérer.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
init.templateDir -
Spécifier le répertoire depuis lequel les modèles vont être copiés. (See the "TEMPLATE DIRECTORY" section of git-init[1].)
-
init.defaultBranch -
Permet de remplacer le nom de la branche par défaut, par exemple lors de l’initialisation d’un nouveau dépôt.
-
init.defaultObjectFormat -
Permet de remplacer le format par défaut pour les nouveaux dépôts. Voir
--object-format=dans git-init[1]. Tant l’option de ligne de commande que la variable d’environnement `GIT_DEFAULT_HASH ont préséance sur cette configuration. -
init.defaultRefFormat -
Permet de remplacer le format de stockage par défaut pour les nouveaux dépôts. Voir
--ref-format=dans git-init[1]. Tant l’option de ligne de commande que la variable d’environnementGIT_DEFAULT_REF_FORMATont préséance sur cette configuration.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
log.abbrevCommit -
Si
true, faire git-log[1], git-show[1], et git-whatchanged[1] assume--abbrev-commit. Vous pouvez surcharger cette option avec--no-abbrev-commit. -
log.date -
Régler le mode de date par défaut pour la commande
log. Régler une valeur de log.date est similaire à l’utilisation de l’option--datedegitlog. Voir git-log[1] pour plus de détails.Si le format est défini à "auto:foo" et que le pager est utilisé, le format "foo" sera utilisé pour le format de date. Sinon, " default" sera utilisé.
-
log.decorate -
Afficher les noms de réf de tous les commits qui sont montrés par la command log. Les valeurs possibles sont :
C’est identique à l ' option
--decoratedegitlog. -
log.initialDecorationSet -
Par défaut,
gitlogn’affiche que des décorations pour certains espaces de nom de réf connus. Si all est spécifié, alors afficher toutes les réfs comme décorations. -
log.excludeDecoration -
Exclure les motifs spécifiés des décorations de journal. Ceci est similaire à l’option de ligne de commande
--decorate-refs-exclude, mais l’option de configuration peut être remplacée par l’option--decorate-refs. -
log.diffMerges -
Définir le format diff pour être utilisé lorsque
--diff-merges=onest spécifié, voir--diff-mergesdans git-log[1] pour les détails. Par défaut àseparate. -
log.follow -
Si
true,gitlogagira comme si l’option--followa été utilisée lorsqu’un seul <chemin> est fourni. Cela a les mêmes limites que--follow, c’est-à-dire que cela ne peut pas être utilisé pour suivre plusieurs fichiers et ne fonctionne pas bien sur un historique non linéaire. -
log.graphColors -
Une liste de couleurs, séparées par des virgules, qui peut être utilisée pour dessiner des lignes d’historique dans
gitlog--graph. -
log.showRoot -
Si la valeur est
true, le commit initial sera montré comme un grand événement de création. Ceci est équivalent à une diff contre un arbre vide. Des outils comme git-log[1] ou git-whatchanged[1], qui cachent normalement le commit racine, vont maintenant le montrer.truepar défaut. -
log.showSignature -
Si c’est true, git-log[1], git-show[1] et git-whatchanged[1] assument
--show-signature. -
log.mailmap -
Si la valeur est true, git-log[1], git-show[1] et git-whatchanged[1] assument
--use-mailmap, sinon ils assument--no-use-mailmap. true par défaut.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
merge.conflictStyle -
Spécifier le style dans lequel les sections en conflit sont écrites dans les fichiers de l’arbre de travail lors de la fusion. La valeur par défaut est "merge", qui affiche un marqueur de conflit <<<<<<<, les modifications faites par un côté, un marqueur
==========, les modifications faites par l’autre côté, et ensuite un marqueur >>>>>>>. Un style alternatif, "diff3", ajoute un marqueur ||||||| et le texte original avant le marqueur========. Le style "merge" tend à produire des régions de conflit plus petites que diff3, à la fois à cause de l’exclusion du texte original, et parce que lorsqu’un sous-ensemble de lignes correspondent des deux côtés, elles sont simplement retirées de la région de conflit. Un autre style alternatif, "zdiff3" est similaire à diff3 mais supprime les lignes correspondantes des deux côtés de la région de conflit lorsque ces lignes correspondantes apparaissent près du début ou de la fin d’une région de conflit. -
merge.defaultToUpstream -
Si la fusion est appelée sans aucun argument de commit, fusionner les branches amont configurées pour la branche courante en utilisant leurs dernières valeurs observées stockées dans leurs branches de suivi à distance. Les valeurs de
branch.<branche-courante>.mergequi nomment les branches distantes nommées parbranch.<branche-courante>.remotesont consultées, puis elles sont mappées viaremote.<distant>.fetchvers leurs branches de suivi à distance correspondantes, et les extrémités de ces branches de suivi sont fusionnées. La valeur par défaut est true. -
merge.ff -
Par défaut, Git ne crée pas de commit de fusion supplémentaire lors de la fusion d’un commit descendant du commit courant. Au lieu de cela, le sommet de la branche courante est avancé rapidement. Quand elle est définie à
false, cette variable indique à Git de créer un commit de fusion supplémentaire dans un tel cas (équivalent à donner l’option--no-ffde la ligne de commande). Lorsqu’il est défini àonly, seules ces fusions en avance rapide sont autorisées (ce qui équivaut à donner l’option--ff-onlydepuis la ligne de commande). -
merge.verifySignatures -
Si vrai, c’est équivalent à l’option de ligne de commande
--verify-signatures. Voir git-merge[1] pour plus de détails. -
merge.branchdesc -
En plus des noms des branches, remplir le message de validation avec le texte de description des branches qui leur est associé. Désactivé par défaut (valeur false).
-
merge.log -
En plus des noms de branches, remplir le message de validation avec au maximum le nombre spécifié de descriptions d’une ligne des commits réels fusionnés. Désactivé par défaut (valeur false), et vaut 20 si
true. -
merge.suppressDest -
En ajoutant à cette variable de configuration à valeurs multiples un motif qui correspond aux noms des branches d’intégration, le message de fusion par défaut calculé pour les fusions dans ces branches d’intégration omettra "into <nom de branche>" dans son titre.
Un élément avec une valeur vide peut être utilisé pour effacer la liste des motifs accumulés dans les entrées de configuration précédentes. Lorsqu’aucune variable
merge.suppressDestn’est définie, la valeur par défaut demasterest utilisée par rétrocompatibilité.
-
merge.renameLimit -
Le nombre de fichiers à prendre en compte dans la partie restante de la détection de renommage lors d’une fusion ; s’il n’est pas spécifié, la valeur par défaut est celle de
diff.renameLimit. Si nimerge.renameLimitnidiff.renameLimitne sont spécifiés, la valeur par défaut est 7000. Ce réglage n’a aucun effet si la détection de renommage est désactivée. -
merge.renames -
Indique si Git doit détecter les renommages. S’il est défini à
false, la détection de renommage est désactivée. S’il est défini àtrue, la détection de renommage de base est activée. La valeur par défaut est diff.renames. -
merge.directoryRenames -
Que Git détecte les renommages de répertoire, affectant ce qui arrive au moment de la fusion à de nouveaux fichiers ajoutés à un répertoire d’un côté de l’historique lorsque ce répertoire a été renommé de l’autre côté de l’historique. Les valeurs possibles sont :
-
false -
La détection de renommage de répertoire est désactivée, ce qui signifie que ces nouveaux fichiers seront abandonnés dans l’ancien répertoire.
-
true -
La détection de renommage de répertoire est activée, ce qui signifie que ces nouveaux fichiers seront déplacés dans le nouveau répertoire.
-
conflict -
Un conflit sera signalé pour de tels chemins.
Si
merge.renamesestfalse, merge.directoryRenames ` est ignoré et traité comme `faux . Vaut par défautconflict. -
-
merge.renormalize -
Indiquer à Git que la représentation canonique des fichiers dans le dépôt a changé au fil du temps (par exemple, les premiers commits enregistrent les fichiers avec des fins de ligne CRLF, mais les plus récents utilisent des fins de ligne LF). Dans un tel dépôt, pour chaque fichier où une fusion à trois branche est nécessaire, Git peut convertir les données enregistrées dans les commits en une forme canonique avant d’effectuer une fusion pour réduire les conflits inutiles. Pour plus d’informations, voir la section "Fusionner des branches avec des attributs d’entrée/de sortie différents" dans gitattributes[5].
-
merge.stat -
Ce qu’il faut afficher entre
ORIG_HEADet le résultat de la fusion à la fin de la fusion, si cela existe. Les valeurs possibles sont :mais toute valeur non reconnue (p. ex., une valeur ajoutée par une future version de Git) est considérée comme
trueau lieu de déclencher une erreur. Par défaut àtrue. -
merge.autoStash -
Lorsque réglé sur
true, créer automatiquement une entrée temporaire de remisage avant le début de l’opération, et l’appliquer après la fin de l’opération. Cela signifie que vous pouvez exécuter la fusion sur un arbre de travail sale. Cependant, à utiliser avec précaution : l’application finale du remisage après une fusion réussie peut entraîner des conflits non négligeables. Cette option peut être remplacée par les options--no-autostashet--autostashde git-merge[1]. La valeur par défaut estfalse. -
merge.tool -
Contrôle quel outil de fusion est utilisé par git-mergetool[1]. La liste ci-dessous indique les valeurs pré-intégrées valides. Toute autre valeur est traitée comme un outil de fusion personnalisé et nécessite qu’une variable
mergetool.<outil>.cmdcorrespondante soit définie. -
merge.guitool -
Contrôle quel outil de fusion est utilisé par git-mergetool[1] lorsque le drapeau
-g/--guiest spécifié. La liste ci-dessous indique les valeurs pré-intégrées valides. Toute autre valeur est traitée comme un outil de fusion personnalisé et nécessite qu’une variablemergetool.<outilgraphique>.cmdcorrespondante soit définie.
|
Warning
|
Missing See original version for this content. |
-
merge.verbosity -
Contrôle la quantité de production affichée par la stratégie de fusion récursive. Le niveau 0 ne produit rien, sauf un message d’erreur final si des conflits ont été détectés. Le niveau 1 ne produit que des conflits, le niveau 2 produit des conflits et des changements de fichiers. Les niveaux 5 et plus produisent des informations de débogage. La valeur par défaut est le niveau 2. Peut être écrasée par la variable d’environnement
GIT_MERGE_VERBOSITY. -
merge.<pilote>.name -
Définit un nom lisible par l’homme pour un pilote de fusion personnalisé de bas niveau. Voir gitattributes[5] pour plus de détails.
-
merge.<pilote>.driver -
Définit la commande qui met en œuvre un pilote de fusion de bas niveau personnalisé. Voir gitattributes[5] pour plus de détails.
-
merge.<pilote>.recursive -
Nomme un pilote de fusion de bas niveau à utiliser lors d’une fusion interne entre des ancêtres communs. Voir gitattributes[5] pour plus de détails.
-
mergetool.<outil>.path -
Surcharger le chemin pour l’outil donné. Ceci est utile si votre outil n’est pas dans le
$PATH. -
mergetool.<outil>.cmd -
Spécifier la commande pour invoquer l’outil de fusion spécifié. La commande spécifiée est évaluée dans un shell avec les variables suivantes disponibles :
BASEest le nom d’un fichier temporaire contenant la base commune des fichiers à fusionner, si disponible ;LOCALest le nom d’un fichier temporaire contenant le contenu du fichier sur la branche actuelle ;REMOTEest le nom d’un fichier temporaire contenant le contenu du fichier de la branche à fusionner ;MERGEDcontient le nom du fichier dans lequel l’outil de fusion devra écrire le résultat d’une fusion réussie. -
mergetool.<outil>.hideResolved -
Permet à l’utilisateur de remplacer la valeur globale de
mergetool.hideResolvedpour un outil spécifique. Voirmergetool.hideResolvedpour la description complète. -
mergetool.<outil>.trustExitCode -
Pour une commande de fusion personnalisée, spécifier si le code de sortie de la commande de fusion peut être utilisé pour déterminer si la fusion a été réussie. Si cela n’est pas réglé à true alors l’horodatage du fichier cible de fusion est vérifié, et la fusion est supposée avoir été réussie si le fichier a été mis à jour ; sinon, l’utilisateur est invité à indiquer le succès de la fusion.
-
mergetool.meld.hasOutput -
Les versions plus anciennes de
meldne gèrent pas l’option--output. Git tentera de déterminer simeldgère--outputen inspectant la sortie demeld--help. Configurermergetool.meld.hasOutputindiquera à Git de sauter ces vérifications et utilisera la valeur configurée à la place. Réglermergetool.meld.hasOutputàtrueindique à Git d’utiliser inconditionnellement l’option--outputetfalseévite d’utiliser--output. -
mergetool.meld.useAutoMerge -
Lorsque l’option
--auto-mergeest donnée, meld fusionnera automatiquement toutes les parties non conflictuelles, mettra en évidence les parties en conflit et attendra la décision de l’utilisateur. Réglermergetool.meld.useAutoMergeàtrueindique à Git d’utiliser sans condition l’option--auto-mergeavecmeld. Régler cette valeur àautopermet de détecter si--auto-mergeest pris en charge et n’utilisera que l’option--auto-mergelorsqu’elle est disponible. Une valeur àfalseévite complètement d’utiliser--auto-mergeet c’est la valeur par défaut. -
mergetool.<variante>.layout -
Configurer la configuration en fenêtre scindée pour la <variante> de vimdiff, parmi
vimdiff,nvimdiff,gvimdiff. Lors du lancement degitmergetoolavec--tool=<variante> (ou sans--toolsimerge.toolest configuré comme <variante>), Git consulteramergetool.<variante>.layoutpour déterminer la disposition de l’outil. Si la configuration spécifique à la variante n’est pas disponible, celle devimdiffest utilisée par défaut. Si elle n’est pas non plus disponible, une mise en page par défaut avec 4 fenêtres sera utilisée. Pour configurer la mise en page, voir le INDICES SPÉCIFIQUES À UN BACKEND la section de git-mergetool[1]. -
mergetool.hideResolved -
Lors d’une fusion, Git résoudra automatiquement le plus de conflits possible et écrira le fichier
$MERGEDcontenant des marqueurs de conflit autour de tout conflit qu’il ne peut résoudre ;$LOCALet$REMOTEsont normalement les versions du fichier avant la résolution de conflit de Git. Ce drapeau provoque l’écrasement de$LOCALet$REMOTEafin que seuls les conflits non résolus soient présentés à l’outil de fusion. Peut être configuré par outil via la variable de configurationmergetool.<outil>.hideResolved. Par défaut àfalse. -
mergetool.keepBackup -
Après avoir effectué une fusion, le fichier original avec des marqueurs de conflit peut être enregistré comme fichier avec une extension
.orig. Si cette variable est définie àfalsealors ce fichier n’est pas conservé. Par défaut àtrue(c.-à-d. garder les fichiers de sauvegarde). -
mergetool.keepTemporaries -
Lorsque vous invoquez un outil de fusion personnalisé, Git utilise un ensemble de fichiers temporaires qu’il passe à l’outil. Si l’outil retourne une erreur et que cette variable est définie à
true, alors ces fichiers temporaires seront conservés ; sinon, ils seront supprimés après la sortie de l’outil. Par défaut àfalse. -
mergetool.writeToTemp -
Git écrit des versions temporaires
BASE,LOCALetREMOTEdes fichiers ayant des conflits dans l’arbre de travail par défaut. Git tentera d’utiliser un répertoire temporaire pour ces fichiers lorsque défini àtrue. Par défaut àfalse. -
mergetool.prompt -
Demander avant chaque invocation du programme de résolution de fusion.
-
mergetool.guiDefault -
Définir à
truepour utilisermerge.guitoolpar défaut (équivalant à spécifier l’argument--gui), ouautopour sélectionnermerge.guitooloumerge.toolselon la présence d`une valeur variable d’environnementDISPLAY. La valeur par défaut estfalse, où l`argument--guidoit être fourni explicitement pour que lemerge.guitoolsoit utilisé.
-
notes.mergeStrategy -
Quelle stratégie de fusion choisir par défaut lors de la résolution des conflits de notes. Doit être au choix
manual,ours,theirs,union, oucat_sort_uniq. Par défaut àmanual. Voir la section « STRATÉGIES DE FUSION DE NOTES » de git-notes[1] pour plus d’informations sur chaque stratégie.Ce réglage peut être remplacé en passant l’option
--strategyà git-notes[1]. -
notes.<nom>.mergeStrategy -
La stratégie de fusion à choisir lors de la fusion denote dans
refs/notes/<nom>. Cela remplace le plus généralnotes.mergeStrategy. Voir la section « STRATÉGIES DE FUSION DE NITES » dans git-notes[1] pour plus d’informations sur les stratégies disponibles. -
notes.displayRef -
Depuis quelle réf (ou réfs, si un glob ou si spécifié plus d’une fois), en plus de la configuration réglée par défaut par
core.notesRefouGIT_NOTES_REF,lirelesnoteslorsdel'affichagedesmessagesdevalidationaveclafamilledecommandesgitlog.Ce réglage peut être remplacé par la variable d’environnement
GIT_NOTES_DISPLAY_REFqui doit être une liste des réfs ou des globs séparés par des virgules.Un avertissement sera émis pour les réfs qui n’existent pas, mais un glob qui ne correspond à aucune réf est silencieusement ignoré.
Ce réglage peut être désactivé par l’option
--no-notesde la famille de commandes git-log[1], ou par l’option--notes=<réf> acceptée par ces commandes.La valeur effective de
core.notesRef(peut-être surchargée parGIT_NOTES_REF) est également implicitement ajoutée à la liste des réfs à afficher. -
notes.rewrite.<commande> -
Lors de la réécriture des commits avec <commande> (actuellement
amendourebase), si cette variable estfalse, git ne copiera pas les notes de l’original vers le commit réécrit. Par défaut àtrue. Voir aussinotes.rewriteRefci-dessous.Ce réglage peut être remplacé par la variable d’environnement
GIT_NOTES_REWRITE_REFqui doit être une liste des réfs ou des globs séparés par des virgules. -
notes.rewriteMode -
Lors de la copie de notes pendant une réécriture (voir l’option
notes.rewrite.<commande>), détermine l’action à faire si le commit cible a déjà une note. Doit être parmioverwrite,concatenate,cat_sort_uniq, ouignore. Par défaut àconcatenate.Ce réglage peut être remplacé par la variable d’environnement
GIT_NOTES_REWRITE_MODE. -
notes.rewriteRef -
Lors de la copie des notes pendant une réécriture, spécifie la réf (totalement qualifiée) dont les notes doivent être copiées. Peut être un glob, auquel cas les notes dans toutes les réfs correspondantes seront copiées. Vous pouvez également spécifier cette configuration plusieurs fois.
N’a pas de valeur par défaut ; vous devez configurer cette variable pour activer le réécriture de la note. Réglez-la à
refs/notes/commitspour permettre la réécriture des notes de commit par défaut.Peut être remplacé par la variable d’environnement
GIT_NOTES_REWRITE_REF. Voirnotes.rewrite.<commande> ci-dessus pour une description plus détaillée de son format.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
push.autoSetupRemote -
Si c’est réglé à
true, suppose--set-upstreamsur une poussée par défaut lorsqu’il n’existe pas de suivi en amont pour la branche actuelle ; cette option prend effet avec les options depush.default,simple,upstream, etcurrent. Il est utile si par défaut vous voulez que les nouvelles branches soient poussées vers le distant par défaut (comme le comportement depush.default=current) et vous voulez également que le suivi en amont soit défini. Les flux de travail les plus susceptibles de bénéficier de cette option sont des flux de travail centrauxsimpleoù toutes les branches devraient avoir le même nom sur le distant. -
push.default -
Définit l’action que
gitpushdevrait prendre si aucun refspec n’est donné (que ce soit depuis la ligne de commande, depuis la configuration ou d’ailleurs). Différentes valeurs sont bien adaptées pour des flux de travail spécifiques ; par exemple, dans un flux de travail purement central (c.-à-d. la source de récupération est égale à la destination de poussée),upstreamest probablement ce que vous voulez. Les valeurs possibles sont :-
nothing -
ne rien pousser (finir en erreur) à moins qu’une refspec ne soit donnée. Ceci est principalement destiné aux personnes qui veulent éviter les erreurs en étant toujours explicite.
-
current -
pousser la branche actuelle pour mettre à jour une branche avec le même nom sur l’hôte distant. Fonctionne avec les flux de travail centraux et non centraux.
-
upstream -
repousser la branche actuelle vers la branche dont les modifications sont généralement intégrées dans la branche actuelle (qui s’appelle
@{upstream}). Ce mode n’a de sens que si vous poussez vers le même dépôt que vous tireriez normalement (c.-à-d. le flux de travail central). -
tracking -
c’est un synonyme obsolète pour
upstream. -
simple -
pousser la branche actuelle vers le même nom sur le distant.
Si vous travaillez avec un flux de travail centralisé (en poussant sur le même dépôt que celui dont vous tirez, qui est généralement
origin), alors vous devez configurer une branche amont avec le même nom.Ce mode est le mode par défaut depuis Git 2.0, et est l’option la plus sûre adaptée aux débutants.
-
matching -
pousser toutes les branches ayant le même nom de part et d’autre. Cela fait que le dépôt sur lequel vous poussez à se souviendra de l’ensemble de branches qui seront poussées (par exemple, si vous poussez toujours
maintetmasterdessus et pas d’autres branches, le dépôt sur lequel vous poussez aura ces deux branches, et votremaintlocal etmasterseront poussées dessus).Pour utiliser ce mode efficacement, vous devez vous assurer que toutes les branches que vous pourriez pousser sont prêtes à être poussée avant de lancer
gitpush, car tout l’intérêt de ce mode est de vous permettre de pousser toutes les branches en une seule passe . Si vous terminez habituellement le travail sur une seule branche et poussez le résultat, alors que d’autres branches sont inachevées, ce mode n’est pas pour vous. Aussi ce mode n’est pas approprié pour pousser vers un dépôt central partagé, car d’autres personnes peuvent y ajouter de nouvelles branches, ou mettre à jour le sommet des branches existantes en dehors de votre contrôle.Ceci était le comportement par défaut, mais plus depuis Git 2.0 (
simpleest le nouveau comportement par défaut).
-
-
push.followTags -
Si défini à true, activer l’option
--follow-tagspar défaut. Vous pouvez remplacer cette configuration au moment de la poussée en spécifiant--no-follow-tags. -
push.gpgSign -
Peut être fixé à une valeur booléenne, ou la chaîne
if-asked. Une valeur true provoque la signature GPG de toutes les poussées, comme si--signedétait passé à git-push[1]. La chaîneif-askedprovoque la signature des poussées si le serveur les gère, comme si--signed=if-askedétait passé àgitpush. Une valeurfalsepeut remplacer une valeur depuis un fichier de configuration de priorité inférieure. Un drapeau de ligne de commande explicite remplace toujours cette option de configuration. -
push.pushOption -
Quand aucun argument
--push-option=<option> n’est donné en ligne de commande,gitpushse comporte comme si chaque <option> de cette variable était donné comme--push-option=<option>.Il s’agit d’une variable multi-valeur, et une valeur vide peut être utilisée dans un fichier de configuration prioritaire (par exemple
.git/configdans un dépôt) pour effacer les valeurs héritées d’un fichier de configuration de priorité inférieure (par exemple `$HOME/.gitconfig ' ).Exemple : /etc/gitconfig push.pushoption = a push.pushoption = b ~/.gitconfig push.pushoption = c repo/.git/config push.pushoption = push.pushoption = b Cela ne résultera qu'en b (a et c sont effacés).
-
push.recurseSubmodules -
Peut être
check,on-demand,only, ouno, avec le même comportement que celui depush--recurse-submodules. Si ce n’est pas défini,noest utilisé par défaut, sauf sisubmodule.recurseest fixé (auquel cas une valeurtruesignifieon-demand). -
push.useForceIfIncludes -
Si c’est fixé à
true, cela équivaut à spécifier--force-if-includescomme option à git-push[1] sur la ligne de commande. Ajouter--no-force-if-includesau moment de pousser surcharge ce réglage de configuration. -
push.negotiate -
Si c’est réglé à
true, essayer de réduire la taille du fichier paquet envoyé par des rondes de négociation dans lesquelles le client et le serveur tentent de trouver des commits en commun. Sifalse, Git s’appuiera uniquement sur l’annonce des réfs du serveur pour trouver des commits en commun. -
push.useBitmaps -
Si c’est réglé à
false, désactiver l’utilisation de bitmaps pourgitpushmême sipack.useBitmapsesttrue, sans empêcher d’autres opérations de git d’utiliser des bitmaps. La valeur par défaut esttrue.
- rebase.backend
-
Le backend par défaut à utiliser pour le rebasage. Les choix possibles sont apply ou merge. À l’avenir, si le backend de fusion gagne toutes les capacités restantes du backend, ce paramètre peut devenir inutilisé.
- rebase.stat
-
S’il faut afficher un diffstat de ce qui a changé en amont depuis le dernier rebasage. Par défaut à false.
- rebase.autoSquash
-
Si réglé à true, activer l’option
--autosquashde git-rebase[1] par défaut pour le mode interactif. Cela peut être surchargé par l’option--no-autosquash. - rebase.autoStash
-
Lorsque réglé sur
true, créer automatiquement une entrée temporaire de remisage avant le début de l’opération, et l’appliquer après la fin de l’opération. Cela signifie que vous pouvez rebaser sur un arbre de travail sale. Cependant, à utiliser avec précaution : l’application finale du remisage après un rebasage peut entraîner des conflits non négligeables. Cette option peut être remplacée par les options--no-autostashet--autostashde git-rebase[1]. La valeur par défaut estfalse. - rebase.updateRefs
-
Si défini à true, active l’option
--update-refspar défaut. - rebase.missingCommitsCheck
-
Si réglé à "warn", git rebase -i affichera un avertissement si certains commits sont supprimés (par exemple une ligne a été supprimée), cependant le rebasage va continuer. S’il est défini à "error", il affichera l’avertissement précédent et arrêtera le rebasage, git rebase --edit-todo peut ensuite être utilisé pour corriger l’erreur. S’il est défini à "ignore", aucun contrôle n’est fait. Pour abandonner un commit sans avertissement ni erreur, utilisez la commande
dropdans la liste de todo. Par défaut à "ignore". - rebase.instructionFormat
-
Une chaîne de format, comme spécifié dans git-log[1], à utiliser pour la liste de todo lors d’un rebasage interactif. Le format aura automatiquement l’empreinte de commit préfixé au format.
- rebase.abbreviateCommands
-
Si réglé à true,
gitrebaseutilisera des noms de commande abrégés dans la liste de todo qui en résultent :p deadbee Le titre de ce commit p fa1afe1 Le titre du commit suivant ...
au lieu de :
pick deadbee Le titre de ce commit pick fa1afe1 Le titre du commit suivant ...
Vaut par défaut
false. - rebase.rescheduleFailedExec
-
Reprogrammer automatiquement les commandes
execqui ont échoué. Cela n’a de sens qu’en mode interactif (ou lorsqu’une option--execa été fournie). C’est la même chose que de spécifier l’option--reschedule-failed-exec. - rebase.forkPoint
-
Si défini à false, régler l’option
--no-fork-pointpar défaut. - rebase.rebaseMerges
-
Si et comment définir l’option
--rebase-mergespar défaut. Peut êtrerebase-cousins,non-rebase-cousins, ou un booléen. La régler à true ou àno-rebase-cousinsest équivalent à--rebase-merges=no-rebase-cousins, la régler àrebase-cousinsest équivalent à--rebase-merges=rebase-cousins, et la régler à false est équivalent à--no-rebase-merges. Passer--rebase-mergessur la ligne de commande, avec ou sans argument, annule toute configurationrebase.rebaseMerges. - rebase.maxLabelLength
-
Lors de la génération de noms à partir de sujets de commit, tronquer les noms à cette longueur. Par défaut, les noms sont tronqués à un peu moins que
NAME_MAX(pour permettre par exemple d’écrire des fichiers.lockpour les réfs esseulées correspondantes).
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
- sequence.editor
-
Éditeur de texte utilisé par
gitrebase-ipour modifier le fichier d’instruction de rebase. La valeur est censée être interprétée par le shell lorsqu’elle est utilisée. Il peut être remplacé par la variable d ' environnementGIT_SEQUENCE_EDITOR. Lorsqu’il n’est pas configuré, l’éditeur de message par défaut est utilisé à la place.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
stash.index -
Si la valeur est true,
gitstashapplyetgitstashpopse comportera comme si--indexétait fourni. Par défaut à false. Voir les descriptions dans git-stash[1].Cela affecte également les invocations de git-stash[1] via
--autostashdes commandes telles que git-merge[1], git-rebase[1] et git-pull[1]. -
stash.showIncludeUntracked -
Si c’est réglé à
true, la commandegitstashshowmontrera les fichiers non suivis d’une entrée de remisage. Vaut par défautfalse. See the description of the 'show' command in git-stash[1]. -
stash.showPatch -
Si cela est vrai, la commande
gitstashshowsans option affichera l’entrée de remisage sous forme de rustine. Par défaut à faux. See the description of the 'show' command in git-stash[1]. -
stash.showStat -
Si cela est à true, la commande
gitstashshowsans option affichera un diffstat de l`entrée de remisage. Par défaut à true. See the description of the 'show' command in git-stash[1].
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
tag.forceSignAnnotated -
Un booléen pour spécifier si les étiquettes annotées créées doivent être signées avec GPG. Si l’option
--annotateest spécifiée sur la ligne de commande, elle a priorité sur cette option. -
tag.sort -
Cette variable contrôle l’ordre de tri des étiquettes lorsqu’elles sont affichées par git-tag[1]. Sans l 'option
--sort=<valeur>, la valeur de cette variable sera utilisée comme valeur par défaut. -
tag.gpgSign -
Un booléen pour spécifier si toutes les étiquettes doivent être signés par GPG. L’utilisation de cette option lors du lancement d’un script automatique peut entraîner un grand nombre de signature d’étiquettes. Il est donc pratique d’utiliser un agent pour éviter de taper votre mot de passe GPG plusieurs fois. Notez que cette option n’affecte pas le comportement de signature des étiquettes activé par les options
-u<id-clé> ou--local-user=<clé-id>.
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
|
Warning
|
Missing See original version for this content. |
-
worktree.guessRemote -
Si aucune branche n’est spécifiée et que
-bni-Bni--detachne sont utilisés, alorsgitworktreeaddrevient par défaut à la création d’une branche depuis HEAD. Siworktree.guessRemoteest fixé à true,worktreeaddtente de trouver une branche de suivi à distance dont le nom correspond uniquement au nouveau nom de branche. Si une telle branche existe, elle est extraite et définie comme « amont» pour la nouvelle branche. Si aucune telle correspondance n’est trouvée, elle revient à créer une nouvelle branche de laHEADactuelle. -
worktree.useRelativePaths -
Lier les arbres de travail utilisant des chemins relatifs ( si "
true") or absolus (si "false"). Ceci est particulièrement utile pour les configurations où le dépôt et les arbres de travail peuvent être déplacés entre différents emplacements ou environnements. Par défaut à "false".Notez que régler le paramètre
worktree.useRelativePathsà "true" implique l’activation de la variable de configurationextensions.relativeWorktrees(voir git-config[1]), ce qui le rend incompatible avec les anciennes versions de Git.
BOGUES
Lors de l’utilisation de la syntaxe dépréciée [section.sous-section], la modification d’une valeur entraînera l’ajout d’une clé multi-lignes au lieu d’une modification, si la sous-section est donnée avec au moins un caractère majuscule. Par exemple, lorsque la configuration ressemble à
[section.sous-section]
clé = valeur1
et l’exécution de git config section.sous-section.clé valeur2 donnera comme résultat
[section.sous-section]
clé = valeur1
clé = valeur2
GIT
Fait partie de la suite git[1]
TRADUCTION
Cette page de manuel a été traduite par Jean-Noël Avila <jn.avila AT free DOT fr> et les membres du projet git-manpages-l10n. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le site https://github.com/jnavila/git-manpages-l10n .