git |
Client git |
---|---|
Linux | Externe |
Syntaxe
git [--version] [--help] [-C path] [-c name=value] [--exec-path[=path]] [--html-path] [--man-path] [--info-path] [-p|--paginate|-P|--no-pager] [--no-replace-objects] [--bare] [--git-dir=path] [--work-tree=path] [--namespace=name] [--super-prefix=path] command [args] |
Paramètres
Nom | Description |
---|---|
--bare | Ce paramètre permet de traiter le référentiel comme un référentiel vide. Si la variable d'environnement GIT_DIR n'est pas défini, il utilise le répertoire de travail actuel. |
-C path | Ce paramètre permet d'exécuter la commande comme si git avait été démarré dans le chemin spécifié (path) au lieu du répertoire de travail courant. Lorsque plusieurs paramètres -C sont spécifiées, chaque chemin «-C path» non absolu est interprété par rapport au chemin «-C path». Ce paramètre permet d'affecter les paramètres attendant un nom de chemin tel que --git-dir et --work-tree en ce sens que leurs interprétations des noms de chemin seraient relatives au répertoire de travail provoqué par le paramètre -C. Par exemple, les appels suivantes sont équivalentes : |
git --git-dir=a.git --work-tree=b -C c status git --git-dir=c/a.git --work-tree=c/b status |
|
-c name=value | Ce paramètre permet de passer un paramètre de configuration à la commande. La valeur spécifiée remplacera les valeurs des fichiers de configuration. Le name est attendu dans le même format que celui indiqué par git config (sous-clefs séparées par des points). Notez que l'omission de = dans «git -c exemple.bar ...» est autorisée et définit «exemple.bar» sur la valeur booléenne vraie (comme le ferait [exemple] dans un fichier de configuration). Cette situation comprend également les symboles d'égalités mais avec une valeur vide (comme «git -c exemple.bar = ...») définit exemple.bar sur la chaîne de caractères vide que git config --type = bool convertira en false. |
--exec-path[=path] | Ce paramètre permet d'indiquer le chemin d'accès où installer vos programmes Git de base. Ceci peut également être contrôlé en définissant la variable d'environnement GIT_EXEC_PATH. Si aucun chemin n'est spécifié, git affichera le paramètre actuel puis quittera immédiatement. |
--git-dir=path | Ce paramètre permet de définir le chemin d'accès au référentiel. IL peut également être contrôlé en définissant la variable d'environnement GIT_DIR. Il peut s'agir d'un chemin absolu ou relatif vers le répertoire de travail actuel. |
--glob-pathspecs | Ce paramètre permet d'ajouter la magie «glob» à toutes les pathspec. Ce paramètre est un équivalant de la variable d'environnement GIT_GLOB_PATHSPECS avec la valeur 1. La désactivation de la segmentation sur des pathspecs individuels peut être effectuée à l'aide de pathspec magique «: (literal)». |
--help | Ce paramètre permet d'afficher le synopsis et une liste des commandes les plus utilisées. Si l'option --all ou -a est spécifiée, toutes les commandes disponibles sont affichées. Si une commande Git est spécifiée, ce paramètre affichera la page de manuel de cette commande. D'autres paramètres sont disponibles pour contrôler le mode d'affichage des pages du manuel. Ainsi vous devriez voir git-help pour plus d'informations, car git --help ... est converti de manière interne en git help. |
--html-path | Ce paramètre permet d'afficher le chemin, sans barre de fin, où la documentation HTML de Git est installée et quitte. |
--icase-pathspecs | Ce paramètre permet d'ajouter la magie «icase» à toutes les pathspec. Ce paramètre est un équivalant de la variable d'environnement GIT_ICASE_PATHSPECS avec la valeur 1. |
--info-path | Ce paramètre permet d'afficher le chemin où sont installés les fichiers d'information documentant cette version de Git et quitte immédiatement. |
--list-cmds=group[,group...] | Ce paramètre permet d'indiquer la liste des commandes par groupe. Ce paramètre permet d'indiquer un paramètre interne/expérimentale et peut changer ou être supprimé dans le futur. Les groupes pris en charge sont : builtins, parseopt (commandes intégrées utilisant des parse-options), main (toutes les commandes du répertoire libexec), les autres (toutes les autres commandes de $PATH ayant le préfixe «git-»), «list-category» (voir les catégories dans command-list.txt), nohelpers (excluant les commandes d'assistance), alias et config (demandant la liste des commandes de la variable de configuration completion.commands). |
--literal-pathspecs | Ce paramètre permet de traiter les pathspec au pied de la lettre (c'est-à-dire pas de magie de pathspec). Ce paramètre est un équivalant de la variable d'environnement GIT_LITERAL_PATHSPECS avec la valeur 1. |
--man-path | Ce paramètre permet d'afficher le manpath (voir man) pour les pages de manuel de cette version de Git et quitte immédiatement. |
--namespace=path | Ce paramètre permet de définir l'espace de noms Git. Voir gitnamespaces pour plus de détails. C'est l'équivalent de la variable d'environnement GIT_NAMESPACE. |
--no-optional-locks | Ce paramètre permet de pas exécuter d'opérations facultatives nécessitant des verrous. Ce paramètre est un équivalant de la variable d'environnement GIT_OPTIONAL_LOCKS avec la valeur 0. |
--noglob-pathspecs | Ce paramètre permet d'ajouter la magie «literal» à toutes les pathspec. Ce paramètre est un équivalant de la variable d'environnement GIT_NOGLOB_PATHSPECS avec la valeur 1. L'activation de la segmentation sur des pathspecs individuels peut être effectuée à l'aide de pathspec magique «: (glob)». |
--no-pager | Ce paramètre permet de ne pas envoyer Git vers une paginateur (il n'y a pas de pagination). |
--no-replace-objects | Ce paramètre permet de ne pas utiliser de références de remplacement pour remplacer les objets Git. Voir git-replace pour plus d'informations. |
-P | Ce paramètre permet de ne pas envoyer Git vers une paginateur (il n'y a pas de pagination). |
-p | Ce paramètre permet de transformer toutes les sorties dans less (ou, si défini, $PAGER) si la sortie standard est un terminal. Ce paramètre remplace les paramètres de configuration du paginateur. |
--paginate | Ce paramètre permet de transformer toutes les sorties dans less (ou, si défini, $PAGER) si la sortie standard est un terminal. Ce paramètre remplace les paramètres de configuration du paginateur. |
--super-prefix=path | Ce paramètre permet de définir un préfixe donnant un chemin depuis le dessus d'un référentiel jusqu'à sa racine. Son utilisation consiste à donner un contexte aux sous-modules concernant le superprojet l'ayant appelé. Actuellement pour usage interne seulement. |
--version | Ce paramètre permet d'afficher la version de la suite Git utilisé et termine immédiatement après. |
--work-tree=path | Ce paramètre permet de définir le chemin d'accès à l'arbre de travail. Il peut s'agir d'un chemin absolu ou d'un chemin relatif au répertoire de travail actuel. Il peut également être contrôlé en définissant la variable d'environnement GIT_WORK_TREE et la variable de configuration core.worktree. |
Description
Cette commande permet d'effectuer la gestion de référentiel de version git sur une poste de travail ou sur un serveur. Git est un système de contrôle de révision distribué, rapide, évolutif et doté d'un jeu de commandes particulièrement riche fournissant à la fois des opérations de haut niveau et un accès complet aux ressources internes.
Remarques
- Le gestionnaire de version git est considéré comme un concurrent de SVN (voir la commande svn), Mercury, StarTeam et Team Foundation.
Liste des commandes de haut-niveau
Voici la liste des commandes de haut-niveau utilisable avec la commande git :
Nom | Description |
---|---|
git-add | Cette commande permet d'ajouter le contenu du fichier à l'index. |
git-am | Cette commande permet d'appliquer une série de correctifs à partir d'une boîte aux lettres. |
git-archive | Cette commande permet de créer une archive de fichiers à partir d'une arborescence spécifiée. |
git-bisect | Cette commande permet d'utiliser la recherche binaire pour trouver le commit ayant introduit un bogue. |
git-branch | Cette commande permet d'afficher la liste, de créer ou de supprimer des branches. |
git-bundle | Cette commande permet de déplacer des objets et des références par archive. |
git-checkout | Cette commande permet de changer de branche ou de restaurer des fichiers d'arbre de travail. |
git-cherry-pick | Cette commande permet d'appliquer les modifications introduites par certains commit existants. |
git-citool | Cette commande contient une alternative graphique à git-commit. |
git-clean | Cette commande permet de supprimer les fichiers non suivis de l'arbre de travail. |
git-clone | Cette commande permet de cloner un référentiel dans un nouveau répertoire. |
git-commit | Cette commande permet d'enregistrer les modifications dans le référentiel. |
git-describe | Cette commande permet d'attribuer à un objet un nom lisible par l'homme en fonction d'une référence disponible. |
git-diff | Cette commande permet d'afficher les modifications entre les commit, le commit et l'arborescence. |
git-fetch | Cette commande permet de télécharger des objets et des références depuis un autre référentiel. |
git-format-patch | Cette commande permet de préparer les correctifs pour la soumission par courrier électronique. |
git-gc | Cette commande permet de nettoyer les fichiers inutiles et optimisez le référentiel local. |
git-grep | Cette commande permet d'afficher des lignes correspondant à un motif de recherche. |
git-gui | Cette commande permet d'utiliser une interface graphique portable pour Git. |
git-init | Cette commande permet de créer un référentiel Git vide ou réinitialiser un référentiel existant. |
git-log | Cette commande permet d'afficher le journal de bord des commit. |
git-merge | Cette commande permet de joindre deux ou plusieurs historiques de développement ensemble. |
git-mv | Cette commande permet de déplacer ou renommer un fichier, un répertoire ou un lien symbolique. |
git-notes | Cette commande permet d'ajouter ou inspecter des notes d'objet. |
git-pull | Cette commande permet de récupérer depuis un certain emplacement et intégrer avec un autre référentiel ou une branche locale. |
git-push | Cette commande permet de mettre à jour les références distantes avec les objets associés. |
git-range-diff | Cette commande permet de comparer deux plages de commit (par exemple, deux versions d'une branche). |
git-rebase | Cette commande permet de réappliquer les commit sur le dessus d'une autre pointe. |
git-reset | Cette commande permet de réinitialiser la tête actuelle à l'état spécifié. |
git-revert | Cette commande permet de rétablir des commit existants. |
git-rm | Cette commande permet de supprimer des fichiers de l'arbre de travail et de l'index. |
git-shortlog | Cette commande permet de résumer la sortie du journal de bord de git. |
git-show | Cette commande permet de montrer différents types d'objets. |
git-stash | Cette commande permet de ranger les modifications dans un répertoire de travail impropre. |
git-status | Cette commande permet d'afficher l'état de l'arbre de travail. |
git-submodule | Cette commande permet d'initialiser, mettre à jour ou inspecter les sous-modules. |
git-tag | Cette commande permet de créer, de répertorier, supprimer ou vérifier un objet de balise signé avec GPG. |
git-worktree | Cette commande permet de gérer plusieurs arbres de travail. |
gitk | Cette commande permet d'utiliser le navigateur de référentiel Git. |
Liste des commandes auxiliaires
Voici la liste des commandes auxiliaires pour les manipulateurs :
Nom | Description |
---|---|
git-config | Cette commande permet de demander et définir des paramètres référentiel ou globales. |
git-fast-export | Cette commande permet d'effectuer l'exportation de données Git. |
git-fast-import | Cette commande permet d'accéder à l'administration de l'importateur rapides de données Git. |
git-filter-branch | Cette commande permet de réécrire les branches. |
git-mergetool | Cette commande permet d'exécuter les outils de résolution des conflits de fusion pour résoudre les conflits de fusion. |
git-pack-refs | Cette commande permet de compacter les entêtes et les balises pour un accès efficace au référentiel. |
git-prune | Cette commande permet d'élaguer tous les objets inaccessibles de la base de données d'objets. |
git-reflog | Cette commande permet de gérer les informations de reflog. |
git-remote | Cette commande permet de gérer un ensemble de référentiels suivis. |
git-repack | Cette commande permet de compresser les objets décompressés dans un référentiel. |
git-replace | Cette commande permet de créer, afficher la liste ou supprimer des références pour remplacer des objets. |
Interrogateurs: | |
git-annotate | Cette commande permet d'effectuer une annotation des lignes de fichier avec les informations de validation. |
git-blame | Cette commande permet d'afficher quelle révision et quel auteur a modifié en dernier chaque ligne d'un fichier. |
git-count-objects | Cette commande permet de compter le nombre d'objets décompressés et leur consommation de disque. |
git-difftool | Cette commande permet d'afficher les modifications à l'aide des outils de comparaison courants. |
git-fsck | Cette commande permet de vérifier la connectivité et la validité des objets de la base de données. |
git-help | Cette commande permet d'afficher les informations d'aide sur Git. |
git-instaweb | Cette commande permet de parcourir instantanément votre référentiel de travail dans gitweb. |
git-merge-tree | Cette commande permet d'afficher la fusion à trois voies sans toucher à l'index. |
git-rerere | Cette commande permet de réutiliser la résolution enregistrée des fusions en conflit. |
git-show-branch | Cette commande permet d'afficher les branches et leurs commit. |
git-verify-commit | Cette commande permet de vérifier la signature GPG des commit. |
git-verify-tag | Cette commande permet de vérifier la signature GPG des balises. |
git-whatchanged | Cette commande permet d'afficher les journaux avec une différence introduite par chaque commit. |
gitweb | Cette commande permet d'utiliser l'Interface Web Git (interface Web vers les référentiels Git). |
Liste des commandes d'interaction
Voici la liste des commandes permettant d'interagir avec GDS étrangers et avec d'autres personnes via un correctif véhiculé par courriel :
Nom | Description |
---|---|
git-archimport | Cette commande permet d'importer un référentiel GNU Arch dans Git. |
git-cvsexportcommit | Cette commande permet d'exporter un seul commit vers un checkout de CVS. |
git-cvsimport | Cette commande permet de récupérer vos données d'un autre SCM que les gens adorent détester. |
git-cvsserver | Cette commande permet d'indiquer l'émulateur de serveur CSV pour Git. |
git-imap-send | Cette commande permet d'envoyer une collection de correctifs de l'entrée standard (stdin) dans un dossier IMAP. |
git-p4 | Cette commande permet d'importer depuis l'endroit spécifié et de soumettre à des référentiels Perforce. |
git-quiltimport | Cette commande permet d'appliquer un patchset de quilt sur la branche courante. |
git-request-pull | Cette commande permet de générer un résumé des modifications en attente. |
git-send-email | Cette commande permet d'envoyer une collection de correctifs sous forme de courriels. |
git-svn | Cette commande permet d'effectuer une opération bidirectionnelle entre un référentiel Subversion et Git. |
Liste des commandes de bas niveau
Bien que Git inclue sa propre couche de Porcelain, ses commandes de bas niveau sont suffisantes pour soutenir le développement de Porcelain alternatives. Les développeurs de telles porcelaines pourraient commencer par se renseigner sur git-update-index et git-read-tree. L'interface (entrée, sortie, ensemble de paramètres et sémantique) de ces commandes de bas niveau se veut beaucoup plus stable que les commandes de niveau Porcelain, car ces commandes sont principalement destinées à une utilisation scriptée. En revanche, l'interface avec les commandes de Porcelain est sujette à modification afin d'améliorer l'expérience de l'utilisateur final. La description suivante divise les commandes de bas niveau en commandes manipulant des objets (dans le référentiel, l'index et l'arborescence de travail), des commandes interrogeant et comparant des objets et des commandes déplaçant des objets et des références entre les référentiels :
Nom | Description |
---|---|
git-apply | Cette commande permet d'appliquer un correctif aux fichiers et/ou à l'index. |
git-checkout-index | Cette commande permet de copier les fichiers de l'index dans l'arbre de travail. |
git-commit-graph | Cette commande permet d'écrire et vérifier les fichiers de validation graphique de Git. |
git-commit-tree | Cette commande permet de créer un nouvel objet commit. |
git-hash-object | Cette commande permet de calculer l'identificateur d'objet et crée éventuellement un blob à partir d'un fichier. |
git-index-pack | Cette commande permet de créer un fichier d'indexation de paquet pour une archive compactée existante. |
git-merge-file | Cette commande permet d'exécuter une fusion de fichiers à trois voies. |
git-merge-index | Cette commande permet d'exécuter une fusion pour les fichiers nécessitant une fusion. |
git-mktag | Cette commande permet de créer un objet de balise. |
git-mktree | Cette commande permet de construire un objet-arbre à partir du texte mis en forme par ls-tree. |
git-multi-pack-index | Cette commande permet d'écrire et vérifier des index multi-paquets. |
git-pack-objects | Cette commande permet de créer une archive d'objets compacte. |
git-prune-packed | Cette commande permet de supprimer les objets supplémentaires étant déjà dans les fichiers de paquet. |
git-read-tree | Cette commande permet de lire les informations de l'arbre dans l'index. |
git-symbolic-ref | Cette commande permet de lire, modifier et supprimer des références symboliques. |
git-unpack-objects | Cette commande permet de décompresser les objets d'une archive compactée. |
git-update-index | Cette commande permet d'enregistrer le contenu du fichier dans l'arborescence de travail de l'index. |
git-update-ref | Cette commande permet de mettre à jour le nom de l'objet entreposé dans une référence en toute sécurité. |
git-write-tree | Cette commande permet de créer un objet d'arborescence à partir de l'index actuel. |
Liste des commandes d'interrogation
Voici la liste des commandes d'interrogation :
Nom | Description |
---|---|
git-cat-file | Cette commande permet de fournir des informations sur le contenu ou le type et la taille des objets du référentiel. |
git-cherry | Cette commande permet de rechercher les commit non encore appliqués en amont. |
git-diff-files | Cette commande permet de comparer les fichiers dans l'arborescence de travail et l'index. |
git-diff-index | Cette commande permet de comparer un arbre à l'arbre de travail ou à l'index. |
git-diff-tree | Cette commande permet de comparer le contenu et le mode des blobs trouvés via deux objets d'arborescence. |
git-for-each-ref | Cette commande permet de demander les informations de sortie sur chaque référentiel. |
git-get-tar-commit-id | Cette commande permet d'extraire l'identificateur de validation à partir d'une archive créée à l'aide de git-archive. |
git-ls-files | Cette commande permet d'afficher des informations sur les fichiers de l'index et de l'arborescence de travail. |
git-ls-remote | Cette commande permet d'afficher la liste des références dans un référentiel à distance. |
git-ls-tree | Cette commande permet d'afficher la liste des contenus d'un objet d'arborescence. |
git-merge-base | Cette commande permet de trouver des ancêtres communs aussi bons que possible pour une fusion. |
git-name-rev | Cette commande permet de trouver des noms symboliques pour des révisions spécifiés. |
git-pack-redundant | Cette commande permet de trouver des fichiers de paquet redondants. |
git-rev-list | Cette commande permet d'afficher les listes engagent des objets dans l'ordre chronologique inverse. |
git-rev-parse | Cette commande permet de choisir et masser les paramètres. |
git-show-index | Cette commande permet d'afficher l'index des archives compressées. |
git-show-ref | Cette commande permet d'afficher la liste des références dans un référentiel local. |
git-unpack-file | Cette commande permet de créer un fichier temporaire avec le contenu d'un blob. |
git-var | Cette commande permet d'afficher une variable logique Git. |
git-verify-pack | Cette commande permet de valider les fichiers d'archive Git compressés. |
En général, les commandes d'interrogation ne touchent pas les fichiers de l'arborescence de travail.
Liste des commandes de synchronisation des référentiels
Voici la liste des commandes de synchronisation des référentiels :
Nom | Description |
---|---|
git-daemon | Cette commande permet de gérer un serveur très simple pour les référentiels Git. |
git-fetch-pack | Cette commande permet de recevoir des objets manquants d'un autre référentiel. |
git-http-backend | Cette commande permet d'intégrer le Git sur un HTTP côté serveur. |
git-send-pack | Cette commande permet de transférer des objets via le protocole Git vers un autre référentiel. |
git-update-server-info | Cette commande permet de mettre à jour le fichier d'informations auxiliaire pour aider les serveurs silencieux. |
Voici les commandes d'assistance utilisées par ce qui précède, les utilisateurs finaux ne les utilisent généralement pas directement. | |
git-http-fetch | Cette commande permet de télécharger depuis un référentiel Git distant via HTTP. |
git-http-push | Cette commande permet de transférer des objets via HTTP/DAV vers un autre référentiel. |
git-parse-remote | Cette commande contient les routines facilitant l'analyse des paramètres d'accès au référentiel à distance. |
git-receive-pack | Cette commande permet de recevez ce qui est poussé dans le référentiel. |
git-shell | Cette commande contient l'interpréteur de commande de connexion restreint pour l'accès SSH de Git seulement. |
git-upload-archive | Cette commande permet d'envoyer les archives à git-archive. |
git-upload-pack | Cette commande permet d'envoyer les objets dans git-fetch-pack. |
Liste des commandes d'assistance interne
Ce sont des commandes d'assistance internes utilisées par d'autres commandes; les utilisateurs finaux ne les utilisent généralement pas directement.
Nom | Description |
---|---|
git-check-attr | Cette commande permet d'afficher les informations gitattributes. |
git-check-ignore | Cette commande permet de déboguer des fichiers gitignore et d'exclusion. |
git-check-mailmap | Cette commande permet d'afficher les noms canoniques et les adresses électroniques des contacts. |
git-check-ref-format | Cette commande permet de s'assurer qu'un nom de référence est bien formé. |
git-column | Cette commande permet d'afficher les données en colonnes. |
git-credential | Cette commande permet de récupérer et entreposer les informations d'identification de l'utilisateur. |
git-credential-cache | Cette commande permet d'aider pour l'entreposage temporairement des mots de passe en mémoire. |
git-credential-store | Cette commande permet d'aider pour l'entreposage des informations d'identification sur le disque. |
git-fmt-merge-msg | Cette commande permet de produire un message de fusion. |
git-interpret-trailers | Cette commande permet d'ajouter ou analyser des informations structurées dans les messages de validation. |
git-mailinfo | Cette commande permet d'extraire le correctif et la paternité d'un message électronique unique. |
git-mailsplit | Cette commande contient un programme de fractionnement UNIX mbox simple. |
git-merge-one-file | Cette commande contient un programme d'aide standard à utiliser avec git-merge-index. |
git-patch-id | Cette commande permet de calculer un identifiant unique pour un correctif. |
git-sh-i18n | Cette commande contient le code de configuration international de Git pour les scripts de l'interpréteur de commande. |
git-sh-setup | Cette commande contient le code d'installation du script d'interpréteur de commande Git commun. |
git-stripspace | Cette commande permet de supprimer les espaces inutiles. |
Mécanisme de configuration
La client Git utilise un format de texte simple pour entreposer les personnalisations par référentiel et par utilisateur. Un tel fichier de configuration peut ressembler à ceci :
# # Les caractères «#» ou «;» indique un commentaire. # ; variables de base [core] ; Ne faites pas confiance aux modes de fichiers filemode = false ; identité de l'utilisateur [user] name = "Sylvain Maltais" email = "gitster@nomdedomaine.com" |
Terminologie de l'identificateur
Nom | Description |
---|---|
<object> | Cet identifiant permet d'indiquer un nom d'objet blob pour n'importe quel type d'objet. |
<blob> | Cet identifiant permet d'indiquer un nom d'objet blob. |
<tree> | Cet identifiant permet d'indiquer un nom d'objet d'arborescence. |
<commit> | Cet identifiant permet d'indiquer un nom d'objet de validation. |
<tree-ish> | Cet identifiant permet d'indiquer un nom d'objet d'arborescence, de validation ou de balise. Une commande prenant un paramètre <tree-ish> veut finalement opérer sur un objet <tree> mais déréférence automatiquement les objets <commit> et <tag> pointant sur un <tree>. |
<commit-ish> | Cet identifiant permet d'indiquer un nom d'objet commit ou de tag. Une commande prenant un paramètre <commit-ish> veut finalement opérer sur un objet <commit> mais déréférence automatiquement les objets <tag> pointant sur un <commit>. |
<type> | Cet identifiant permet d'indiquer qu'un type d'objet est requis. Actuellement l'un des éléments suivants: blob, tree, commit ou tag. |
<file> | Cet identifiant permet d'indiquer n nom de fichier - presque toujours relatif à la racine de l'arborescence décrite par GIT_INDEX_FILE. |
Identifiants symboliques
Toute commande Git acceptant n'importe quel <objet> peut également utiliser la notation symbolique suivante :
Nom | Description |
---|---|
HEAD | Cet identifiant permet d'indiquer la tête dans la branche courante. |
<tag> | Cet identifiant permet d'indiquer un nom de tag valide (c'est-à-dire une référence refs/tags/<tag>). |
<head> | Cet identifiant permet d'indiquer un nom de tête valide (c'est-à-dire une référence refs/heads/<head>). |
Variables d'environnements
Diverses commandes Git utilisent les variables d'environnement suivantes :
Nom | Description |
---|---|
Le référentiel Git : Ces variables d'environnement s'appliquent à toutes les commandes Git de base. | |
GIT_INDEX_FILE | Cette variable d'environnement permet d'indiquer la spécification d'un fichier d'index alternatif. Si cette variable d'environnement n'est pas spécifié, la valeur par défaut de «$GIT_DIR/index» est utilisée. |
GIT_INDEX_VERSION | Cette variable d'environnement permet d'indiquer la spécification d'une version d'index pour les nouveaux référentiels. Elle n'affectera pas les fichiers d'index existants. Par défaut, la version 2 ou 3 du fichier d'index est utilisée. Voir git-update-index. |
GIT_OBJECT_DIRECTORY | Cette variable d'environnement permet d'indiquer si le répertoire d'entreposage d'objets est spécifié via cette variable d'environnement, les répertoires sha1 sont créés en dessous. Sinon, le répertoire par défaut «$GIT_DIR/objects» est utilisé. |
GIT_ALTERNATE_OBJECT_DIRECTORIES | Cette variable d'environnement permet d'indiquer une liste de répertoires séparée par «:» sous Linux ou par «;» sous Windows d'objets Git pouvant être utilisés pour rechercher des objets Git. Les nouveaux objets ne seront pas écrits dans ces répertoires. |
GIT_DIR | Cette variable d'environnement permet d'indiquer si la variable d'environnement GIT_DIR est définie, un chemin à utiliser à la place du fichier .git par défaut pour la base du référentiel. Le paramètre de ligne de commande --git-dir définit également cette valeur. |
GIT_WORK_TREE | Cette variable d'environnement permet de définir le chemin d'accès à la racine de l'arbre de travail. Elle peut également être contrôlé par le paramètre de ligne de commande --work-tree et la variable de configuration core.worktree. |
GIT_NAMESPACE | Cette variable d'environnement permet de définir l'espace de noms Git; voir gitnamespaces. Le paramètre de ligne de commande --namespace définit également cette valeur. |
GIT_CEILING_DIRECTORIES | Cette variable d'environnement permet d'indiquer une liste de chemins absolus séparés par deux points. Si la variable d'environnement est défini, il s'agit d'une liste de répertoires dans lesquels Git ne devrait pas chercher dans un répertoire de référentiel (utile pour exclure les répertoires réseau à chargement lent). Elle n'exclura pas le répertoire de travail actuel ni un GIT_DIR défini sur la ligne de commande ou dans l'environnement. Normalement, Git doit lire les entrées de cette liste et résoudre tout lien symbolique éventuellement présent afin de les comparer au répertoire actuel. Toutefois, même si cet accès est lent, vous pouvez ajouter une entrée vide à la liste pour indiquer à Git que les entrées suivantes ne sont pas des liens symboliques et ne doivent pas être résolues. Par exemple, «GIT_CEILING_DIRECTORIES=/maybe/symlink::/very/slow/non/». |
GIT_DISCOVERY_ACROSS_FILESYSTEM | Cette variable d'environnement permet d'indiquer si Git ne peut pas s'arrêter aux limites du système de fichiers. Lorsqu'il est exécuté dans un répertoire n'ayant pas de répertoire de référentiel «.git», Git essaie de trouver un tel répertoire dans les répertoires parents pour trouver le haut de l'arborescence de travail, mais par défaut, il ne traverse pas les limites du système de fichiers. |
GIT_COMMON_DIR | Cette variable d'environnement permet d'indiquer si cette variable est définie sur un chemin, les fichiers autres que des arbres de construction normalement situés dans $GIT_DIR seront extraits de ce chemin. Les fichiers spécifiques aux arbres de travail tels que HEAD ou index sont extraits de $GIT_DIR. Voir gitrepository-layout et git-worktree pour plus de détails. |
Différences avec Git | |
GIT_DIFF_OPTS | Cette variable d'environnement permet d'indiquer le nombre de lignes de contexte affichées lors de la création d'un diff unifié. |
GIT_EXTERNAL_DIFF | Cette variable d'environnement permet d'indiquer le nom du programme externe à utiliser par Git pour effectuer les comparaisons de différence s'il est définit. |
Les autres variables | |
GIT_MERGE_VERBOSITY | Cette variable d'environnement permet d'indiquer le nombre contrôlant la quantité de sortie affichée par la stratégie de fusion récursive. Remplace la merge.verbosity.. Voir git-merge. |
GIT_PAGER | Cette variable d'environnement permet de remplacer $PAGER. S'il est défini sur une chaîne de caractères vide ou sur la valeur «cat», git ne lancera pas de pagination. Voir aussi le paramètre core.pager dans git-config(1). |
GIT_SSH | Cette variable d'environnement permet d'indiquer qu'il faut utiliser git fetch et git push utiliseront cette commande au lieu de ssh lorsqu'ils devront se connecter à un système à distance. |
GIT_FLUSH | Cette variable d'environnement permet d'indiquer s'il est vaut 1, que git blame (en mode incrémentiel), git rev-list, git log et git whatchanged forceront un vidage du flux de sortie après chaque enregistrement orienté sur la validation. |
GIT_TRACE | Cette variable d'environnement permet d'indiquer s'il est vaut 1, 2 ou true, que a comparaison ne tient pas compte des différences entre majuscules et minuscules et git affichera une trace. |
Voir également
Articles - SVN vs Git
Système d'exploitation - Linux - Références de commandes et de programmes - «svn»