CINXE.COM
Git - Les variables d’environnement
<!DOCTYPE html> <html lang="fr"> <head> <meta charset='utf-8'> <meta content='IE=edge,chrome=1' http-equiv='X-UA-Compatible'> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Git - Les variables d’environnement</title> <link href="/favicon.ico" rel='shortcut icon' type='image/x-icon'> <link rel="stylesheet" href="/application.min.css"> <script src="/js/modernizr.js"></script> <script src="/js/modernize.js"></script> </head> <body id="documentation"> <div class="inner"> <header> <a href="/"><img src="/images/logo@2x.png" width="110" height="46" alt="Git" /></a> <span id="tagline"></span> <script type="text/javascript"> const taglines = [ "fast-version-control", "everything-is-local", "distributed-even-if-your-workflow-isnt", "local-branching-on-the-cheap", "distributed-is-the-new-centralized" ]; var tagline = taglines[Math.floor(Math.random() * taglines.length)]; document.getElementById('tagline').innerHTML = '--' + tagline; </script> <form id="search" action="/search/results"> <input id="search-text" name="search" placeholder="Type / to search entire site…" autocomplete="off" type="text" /> </form> <div id="search-results"></div> </header> </div> <div class="inner"> <div id="content-wrapper"> <div tabindex="1" class="sidebar-btn"></div> <aside class="sidebar" id="sidebar"> <nav> <ul> <li> <a href="/about">About</a> <ul> </ul> </li> <li> <a href="/doc" class="active">Documentation</a> <ul class="expanded"> <li> <a href="/docs">Reference</a> </li> <li> <a href="/book" class="active">Book</a> </li> <li> <a href="/videos">Videos</a> </li> <li> <a href="/doc/ext">External Links</a> </li> </ul> </li> <li> <a href="/downloads">Downloads</a> <ul > <li> <a href="/downloads/guis">GUI Clients</a> </li> <li> <a href="/downloads/logos">Logos</a> </li> </ul> </li> <li> <a href="/community">Community</a> </li> </ul> <hr class="sidebar"> <p> This book is available in <a href="/book/en/v2/Git-Internals-Environment-Variables">English</a>. </p> <p> Full translation available in <table> <tr><td><a href="/book/az/v2/Git%e2%80%99in-Daxili-%c4%b0%c5%9fl%c9%99ri-M%c3%bchit-D%c9%99yi%c5%9f%c9%99nl%c9%99ri">azərbaycan dili</a>,</td></tr> <tr><td><a href="/book/bg">български език</a>,</td></tr> <tr><td><a href="/book/de/v2/Git-Interna-Zusammenfassung">Deutsch</a>,</td></tr> <tr><td><a href="/book/es/v2/Los-entresijos-internos-de-Git-Variables-de-entorno">Español</a>,</td></tr> <tr><td><a href="/book/fr/v2/Les-tripes-de-Git-Les-variables-d%e2%80%99environnement">Français</a>,</td></tr> <tr><td><a href="/book/gr">Ελληνικά</a>,</td></tr> <tr><td><a href="/book/ja/v2/Git%e3%81%ae%e5%86%85%e5%81%b4-%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0">日本語</a>,</td></tr> <tr><td><a href="/book/ko/v2/Git%ec%9d%98-%eb%82%b4%eb%b6%80-%ed%99%98%ea%b2%bd%eb%b3%80%ec%88%98">한국어</a>,</td></tr> <tr><td><a href="/book/nl/v2/Git-Binnenwerk-Omgevingsvariabelen">Nederlands</a>,</td></tr> <tr><td><a href="/book/ru/v2/Git-%d0%b8%d0%b7%d0%bd%d1%83%d1%82%d1%80%d0%b8-%d0%9f%d0%b5%d1%80%d0%b5%d0%bc%d0%b5%d0%bd%d0%bd%d1%8b%d0%b5-%d0%be%d0%ba%d1%80%d1%83%d0%b6%d0%b5%d0%bd%d0%b8%d1%8f">Русский</a>,</td></tr> <tr><td><a href="/book/sl/v2/Notranjost-Gita-Spremenljivke-okolja">Slovenščina</a>,</td></tr> <tr><td><a href="/book/tl/v2/Mga-Panloob-ng-GIT-Mga-Variable-sa-Kapaligiran">Tagalog</a>,</td></tr> <tr><td><a href="/book/uk/v2/Git-%d0%b7%d1%81%d0%b5%d1%80%d0%b5%d0%b4%d0%b8%d0%bd%d0%b8-%d0%97%d0%bc%d1%96%d0%bd%d0%bd%d1%96-%d1%81%d0%b5%d1%80%d0%b5%d0%b4%d0%be%d0%b2%d0%b8%d1%89%d0%b0">Українська</a></td></tr> <tr><td><a href="/book/zh/v2/Git-%e5%86%85%e9%83%a8%e5%8e%9f%e7%90%86-%e7%8e%af%e5%a2%83%e5%8f%98%e9%87%8f">简体中文</a>,</td></tr> </table> </p> <p> Partial translations available in <table> <tr><td><a href="/book/cs/v2/Git-Internals-Environment-Variables">Čeština</a>,</td></tr> <tr><td><a href="/book/mk/v2/%d0%92%d0%bd%d0%b0%d1%82%d1%80%d0%b5%d1%88%d0%bd%d0%be%d1%81%d1%82%d0%b0-%d0%bd%d0%b0-Git-Environment-Variables">Македонски</a>,</td></tr> <tr><td><a href="/book/pl/v2/Mechanizmy-wewn%c4%99trzne-w-Git-Environment-Variables">Polski</a>,</td></tr> <tr><td><a href="/book/sr/v2/%d0%93%d0%b8%d1%82-%d0%b8%d0%b7%d0%bd%d1%83%d1%82%d1%80%d0%b0-%d0%9f%d1%80%d0%be%d0%bc%d0%b5%d0%bd%d1%99%d0%b8%d0%b2%d0%b5-%d0%be%d0%ba%d1%80%d1%83%d0%b6%d0%b5%d1%9a%d0%b0">Српски</a>,</td></tr> <tr><td><a href="/book/uz/v2/Git-Internals-Environment-Variables">Ўзбекча</a>,</td></tr> <tr><td><a href="/book/zh-tw/v2/Git-Internals-Environment-Variables">繁體中文</a>,</td></tr> </table> </p> <p> Translations started for <table> <tr><td><a href="/book/be/v2/Git-Internals-Environment-Variables">Беларуская</a>,</td></tr> <tr><td><a href="/book/fa/v2/Git-Internals-Environment-Variables" dir="rtl">فارسی</a>,</td></tr> <tr><td><a href="/book/id/v2/Git-Internals-Environment-Variables">Indonesian</a>,</td></tr> <tr><td><a href="/book/it/v2/Git-Internals-Environment-Variables">Italiano</a>,</td></tr> <tr><td><a href="/book/ms/v2/Git-Internals-Environment-Variables">Bahasa Melayu</a>,</td></tr> <tr><td><a href="/book/pt-br/v2/Funcionamento-Interno-do-Git-Vari%c3%a1veis-de-ambiente">Português (Brasil)</a>,</td></tr> <tr><td><a href="/book/pt-pt/v2/Internos-do-Git-Environment-Variables">Português (Portugal)</a>,</td></tr> <tr><td><a href="/book/sv/v2/Git-Internals-Environment-Variables">Svenska</a>,</td></tr> <tr><td><a href="/book/tr/v2/Dahili-Git-%c3%96geleri-Ortam-De%c4%9fi%c5%9fkenleri">Türkçe</a>.</td></tr> </table> </p> <hr class="sidebar"/> <p> The source of this book is <a href="https://github.com/progit/progit2-fr">hosted on GitHub.</a></br> Patches, suggestions and comments are welcome. </p> </nav> </aside> <div id="content"> <div id="book-chapters"> <a class="dropdown-trigger" id="book-chapters-trigger" data-panel-id="chapters-dropdown" href="#">Chapters ▾</a> <div class='dropdown-panel' id='chapters-dropdown'> <div class='three-column'> <div class="column-left"> <ol class='book-toc'> <li class='chapter'> <h2>1. <a href="/book/fr/v2/D%c3%a9marrage-rapide-%c3%80-propos-de-la-gestion-de-version">Démarrage rapide</a></h2> <ol> <li> 1.1 <a href="/book/fr/v2/D%c3%a9marrage-rapide-%c3%80-propos-de-la-gestion-de-version">À propos de la gestion de version</a> </li> <li> 1.2 <a href="/book/fr/v2/D%c3%a9marrage-rapide-Une-rapide-histoire-de-Git">Une rapide histoire de Git</a> </li> <li> 1.3 <a href="/book/fr/v2/D%c3%a9marrage-rapide-Rudiments-de-Git">Rudiments de Git</a> </li> <li> 1.4 <a href="/book/fr/v2/D%c3%a9marrage-rapide-La-ligne-de-commande">La ligne de commande</a> </li> <li> 1.5 <a href="/book/fr/v2/D%c3%a9marrage-rapide-Installation-de-Git">Installation de Git</a> </li> <li> 1.6 <a href="/book/fr/v2/D%c3%a9marrage-rapide-Param%c3%a9trage-%c3%a0-la-premi%c3%a8re-utilisation-de-Git">Paramétrage à la première utilisation de Git</a> </li> <li> 1.7 <a href="/book/fr/v2/D%c3%a9marrage-rapide-Obtenir-de-l%e2%80%99aide">Obtenir de l’aide</a> </li> <li> 1.8 <a href="/book/fr/v2/D%c3%a9marrage-rapide-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>2. <a href="/book/fr/v2/Les-bases-de-Git-D%c3%a9marrer-un-d%c3%a9p%c3%b4t-Git">Les bases de Git</a></h2> <ol> <li> 2.1 <a href="/book/fr/v2/Les-bases-de-Git-D%c3%a9marrer-un-d%c3%a9p%c3%b4t-Git">Démarrer un dépôt Git</a> </li> <li> 2.2 <a href="/book/fr/v2/Les-bases-de-Git-Enregistrer-des-modifications-dans-le-d%c3%a9p%c3%b4t">Enregistrer des modifications dans le dépôt</a> </li> <li> 2.3 <a href="/book/fr/v2/Les-bases-de-Git-Visualiser-l%e2%80%99historique-des-validations">Visualiser l’historique des validations</a> </li> <li> 2.4 <a href="/book/fr/v2/Les-bases-de-Git-Annuler-des-actions">Annuler des actions</a> </li> <li> 2.5 <a href="/book/fr/v2/Les-bases-de-Git-Travailler-avec-des-d%c3%a9p%c3%b4ts-distants">Travailler avec des dépôts distants</a> </li> <li> 2.6 <a href="/book/fr/v2/Les-bases-de-Git-%c3%89tiquetage">Étiquetage</a> </li> <li> 2.7 <a href="/book/fr/v2/Les-bases-de-Git-Les-alias-Git">Les alias Git</a> </li> <li> 2.8 <a href="/book/fr/v2/Les-bases-de-Git-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>3. <a href="/book/fr/v2/Les-branches-avec-Git-Les-branches-en-bref">Les branches avec Git</a></h2> <ol> <li> 3.1 <a href="/book/fr/v2/Les-branches-avec-Git-Les-branches-en-bref">Les branches en bref</a> </li> <li> 3.2 <a href="/book/fr/v2/Les-branches-avec-Git-Branches-et-fusions%c2%a0:-les-bases">Branches et fusions : les bases</a> </li> <li> 3.3 <a href="/book/fr/v2/Les-branches-avec-Git-Gestion-des-branches">Gestion des branches</a> </li> <li> 3.4 <a href="/book/fr/v2/Les-branches-avec-Git-Travailler-avec-les-branches">Travailler avec les branches</a> </li> <li> 3.5 <a href="/book/fr/v2/Les-branches-avec-Git-Branches-de-suivi-%c3%a0-distance">Branches de suivi à distance</a> </li> <li> 3.6 <a href="/book/fr/v2/Les-branches-avec-Git-Rebaser-Rebasing">Rebaser (Rebasing)</a> </li> <li> 3.7 <a href="/book/fr/v2/Les-branches-avec-Git-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>4. <a href="/book/fr/v2/Git-sur-le-serveur-Protocoles">Git sur le serveur</a></h2> <ol> <li> 4.1 <a href="/book/fr/v2/Git-sur-le-serveur-Protocoles">Protocoles</a> </li> <li> 4.2 <a href="/book/fr/v2/Git-sur-le-serveur-Installation-de-Git-sur-un-serveur">Installation de Git sur un serveur</a> </li> <li> 4.3 <a href="/book/fr/v2/Git-sur-le-serveur-G%c3%a9n%c3%a9ration-des-cl%c3%a9s-publiques-SSH">Génération des clés publiques SSH</a> </li> <li> 4.4 <a href="/book/fr/v2/Git-sur-le-serveur-Mise-en-place-du-serveur">Mise en place du serveur</a> </li> <li> 4.5 <a href="/book/fr/v2/Git-sur-le-serveur-D%c3%a9mon-Daemon-Git">Démon (Daemon) Git</a> </li> <li> 4.6 <a href="/book/fr/v2/Git-sur-le-serveur-HTTP-intelligent">HTTP intelligent</a> </li> <li> 4.7 <a href="/book/fr/v2/Git-sur-le-serveur-GitWeb">GitWeb</a> </li> <li> 4.8 <a href="/book/fr/v2/Git-sur-le-serveur-GitLab">GitLab</a> </li> <li> 4.9 <a href="/book/fr/v2/Git-sur-le-serveur-Git-h%c3%a9berg%c3%a9">Git hébergé</a> </li> <li> 4.10 <a href="/book/fr/v2/Git-sur-le-serveur-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>5. <a href="/book/fr/v2/Git-distribu%c3%a9-D%c3%a9veloppements-distribu%c3%a9s">Git distribué</a></h2> <ol> <li> 5.1 <a href="/book/fr/v2/Git-distribu%c3%a9-D%c3%a9veloppements-distribu%c3%a9s">Développements distribués</a> </li> <li> 5.2 <a href="/book/fr/v2/Git-distribu%c3%a9-Contribution-%c3%a0-un-projet">Contribution à un projet</a> </li> <li> 5.3 <a href="/book/fr/v2/Git-distribu%c3%a9-Maintenance-d%e2%80%99un-projet">Maintenance d’un projet</a> </li> <li> 5.4 <a href="/book/fr/v2/Git-distribu%c3%a9-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> </ol> </div> <div class='column-middle'> <ol class='book-toc'> <li class='chapter'> <h2>6. <a href="/book/fr/v2/GitHub-Configuration-et-param%c3%a9trage-d%e2%80%99un-compte">GitHub</a></h2> <ol> <li> 6.1 <a href="/book/fr/v2/GitHub-Configuration-et-param%c3%a9trage-d%e2%80%99un-compte">Configuration et paramétrage d’un compte</a> </li> <li> 6.2 <a href="/book/fr/v2/GitHub-Contribution-%c3%a0-un-projet">Contribution à un projet</a> </li> <li> 6.3 <a href="/book/fr/v2/GitHub-Maintenance-d%e2%80%99un-projet">Maintenance d’un projet</a> </li> <li> 6.4 <a href="/book/fr/v2/GitHub-Gestion-d%e2%80%99un-regroupement">Gestion d’un regroupement</a> </li> <li> 6.5 <a href="/book/fr/v2/GitHub-%c3%89criture-de-scripts-pour-GitHub">Écriture de scripts pour GitHub</a> </li> <li> 6.6 <a href="/book/fr/v2/GitHub-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>7. <a href="/book/fr/v2/Utilitaires-Git-S%c3%a9lection-des-versions">Utilitaires Git</a></h2> <ol> <li> 7.1 <a href="/book/fr/v2/Utilitaires-Git-S%c3%a9lection-des-versions">Sélection des versions</a> </li> <li> 7.2 <a href="/book/fr/v2/Utilitaires-Git-Indexation-interactive">Indexation interactive</a> </li> <li> 7.3 <a href="/book/fr/v2/Utilitaires-Git-Remisage-et-nettoyage">Remisage et nettoyage</a> </li> <li> 7.4 <a href="/book/fr/v2/Utilitaires-Git-Signer-votre-travail">Signer votre travail</a> </li> <li> 7.5 <a href="/book/fr/v2/Utilitaires-Git-Recherche">Recherche</a> </li> <li> 7.6 <a href="/book/fr/v2/Utilitaires-Git-R%c3%a9%c3%a9crire-l%e2%80%99historique">Réécrire l’historique</a> </li> <li> 7.7 <a href="/book/fr/v2/Utilitaires-Git-Reset-d%c3%a9mystifi%c3%a9">Reset démystifié</a> </li> <li> 7.8 <a href="/book/fr/v2/Utilitaires-Git-Fusion-avanc%c3%a9e">Fusion avancée</a> </li> <li> 7.9 <a href="/book/fr/v2/Utilitaires-Git-Rerere">Rerere</a> </li> <li> 7.10 <a href="/book/fr/v2/Utilitaires-Git-D%c3%a9boguer-avec-Git">Déboguer avec Git</a> </li> <li> 7.11 <a href="/book/fr/v2/Utilitaires-Git-Sous-modules">Sous-modules</a> </li> <li> 7.12 <a href="/book/fr/v2/Utilitaires-Git-Empaquetage-bundling">Empaquetage (bundling)</a> </li> <li> 7.13 <a href="/book/fr/v2/Utilitaires-Git-Replace">Replace</a> </li> <li> 7.14 <a href="/book/fr/v2/Utilitaires-Git-Stockage-des-identifiants">Stockage des identifiants</a> </li> <li> 7.15 <a href="/book/fr/v2/Utilitaires-Git-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>8. <a href="/book/fr/v2/Personnalisation-de-Git-Configuration-de-Git">Personnalisation de Git</a></h2> <ol> <li> 8.1 <a href="/book/fr/v2/Personnalisation-de-Git-Configuration-de-Git">Configuration de Git</a> </li> <li> 8.2 <a href="/book/fr/v2/Personnalisation-de-Git-Attributs-Git">Attributs Git</a> </li> <li> 8.3 <a href="/book/fr/v2/Personnalisation-de-Git-Crochets-Git">Crochets Git</a> </li> <li> 8.4 <a href="/book/fr/v2/Personnalisation-de-Git-Exemple-de-politique-g%c3%a9r%c3%a9e-par-Git">Exemple de politique gérée par Git</a> </li> <li> 8.5 <a href="/book/fr/v2/Personnalisation-de-Git-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>9. <a href="/book/fr/v2/Git-et-les-autres-syst%c3%a8mes-Git-comme-client">Git et les autres systèmes</a></h2> <ol> <li> 9.1 <a href="/book/fr/v2/Git-et-les-autres-syst%c3%a8mes-Git-comme-client">Git comme client</a> </li> <li> 9.2 <a href="/book/fr/v2/Git-et-les-autres-syst%c3%a8mes-Migration-vers-Git">Migration vers Git</a> </li> <li> 9.3 <a href="/book/fr/v2/Git-et-les-autres-syst%c3%a8mes-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>10. <a href="/book/fr/v2/Les-tripes-de-Git-Plomberie-et-porcelaine">Les tripes de Git</a></h2> <ol> <li> 10.1 <a href="/book/fr/v2/Les-tripes-de-Git-Plomberie-et-porcelaine">Plomberie et porcelaine</a> </li> <li> 10.2 <a href="/book/fr/v2/Les-tripes-de-Git-Les-objets-de-Git">Les objets de Git</a> </li> <li> 10.3 <a href="/book/fr/v2/Les-tripes-de-Git-R%c3%a9f%c3%a9rences-Git">Références Git</a> </li> <li> 10.4 <a href="/book/fr/v2/Les-tripes-de-Git-Fichiers-group%c3%a9s">Fichiers groupés</a> </li> <li> 10.5 <a href="/book/fr/v2/Les-tripes-de-Git-La-refspec">La refspec</a> </li> <li> 10.6 <a href="/book/fr/v2/Les-tripes-de-Git-Les-protocoles-de-transfert">Les protocoles de transfert</a> </li> <li> 10.7 <a href="/book/fr/v2/Les-tripes-de-Git-Maintenance-et-r%c3%a9cup%c3%a9ration-de-donn%c3%a9es">Maintenance et récupération de données</a> </li> <li> 10.8 <a href="/book/fr/v2/Les-tripes-de-Git-Les-variables-d%e2%80%99environnement" class="active">Les variables d’environnement</a> </li> <li> 10.9 <a href="/book/fr/v2/Les-tripes-de-Git-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> </ol> </div> <div class='column-right'> <ol class='book-toc'> <li class='chapter'> <h2>A1. <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Interfaces-graphiques">Annexe A: Git dans d’autres environnements</a></h2> <ol> <li> A1.1 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Interfaces-graphiques">Interfaces graphiques</a> </li> <li> A1.2 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Visual-Studio">Git dans Visual Studio</a> </li> <li> A1.3 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Visual-Studio-Code">Git dans Visual Studio Code</a> </li> <li> A1.4 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-IntelliJ-/-PyCharm-/-WebStorm-/-PhpStorm-/-RubyMine">Git dans IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine</a> </li> <li> A1.5 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Sublime-Text">Git dans Sublime Text</a> </li> <li> A1.6 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Bash">Git dans Bash</a> </li> <li> A1.7 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-Zsh">Git dans Zsh</a> </li> <li> A1.8 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Git-dans-PowerShell">Git dans PowerShell</a> </li> <li> A1.9 <a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-R%c3%a9sum%c3%a9">Résumé</a> </li> </ol> </li> <li class='chapter'> <h2>A2. <a href="/book/fr/v2/Annexe-B:-Embarquer-Git-dans-vos-applications-Git-en-ligne-de-commande">Annexe B: Embarquer Git dans vos applications</a></h2> <ol> <li> A2.1 <a href="/book/fr/v2/Annexe-B:-Embarquer-Git-dans-vos-applications-Git-en-ligne-de-commande">Git en ligne de commande</a> </li> <li> A2.2 <a href="/book/fr/v2/Annexe-B:-Embarquer-Git-dans-vos-applications-Libgit2">Libgit2</a> </li> <li> A2.3 <a href="/book/fr/v2/Annexe-B:-Embarquer-Git-dans-vos-applications-JGit">JGit</a> </li> <li> A2.4 <a href="/book/fr/v2/Annexe-B:-Embarquer-Git-dans-vos-applications-go-git">go-git</a> </li> <li> A2.5 <a href="/book/fr/v2/Annexe-B:-Embarquer-Git-dans-vos-applications-Dulwich">Dulwich</a> </li> </ol> </li> <li class='chapter'> <h2>A3. <a href="/book/fr/v2/Commandes-Git-Installation-et-configuration">Commandes Git</a></h2> <ol> <li> A3.1 <a href="/book/fr/v2/Commandes-Git-Installation-et-configuration">Installation et configuration</a> </li> <li> A3.2 <a href="/book/fr/v2/Commandes-Git-Obtention-et-cr%c3%a9ation-des-projets">Obtention et création des projets</a> </li> <li> A3.3 <a href="/book/fr/v2/Commandes-Git-Capture-d%e2%80%99instantan%c3%a9-basique">Capture d’instantané basique</a> </li> <li> A3.4 <a href="/book/fr/v2/Commandes-Git-Cr%c3%a9ation-de-branches-et-fusion">Création de branches et fusion</a> </li> <li> A3.5 <a href="/book/fr/v2/Commandes-Git-Partage-et-mise-%c3%a0-jour-de-projets">Partage et mise à jour de projets</a> </li> <li> A3.6 <a href="/book/fr/v2/Commandes-Git-Inspection-et-comparaison">Inspection et comparaison</a> </li> <li> A3.7 <a href="/book/fr/v2/Commandes-Git-D%c3%a9bogage">Débogage</a> </li> <li> A3.8 <a href="/book/fr/v2/Commandes-Git-Patchs">Patchs</a> </li> <li> A3.9 <a href="/book/fr/v2/Commandes-Git-Courriel">Courriel</a> </li> <li> A3.10 <a href="/book/fr/v2/Commandes-Git-Syst%c3%a8mes-externes">Systèmes externes</a> </li> <li> A3.11 <a href="/book/fr/v2/Commandes-Git-Administration">Administration</a> </li> <li> A3.12 <a href="/book/fr/v2/Commandes-Git-Commandes-de-plomberie">Commandes de plomberie</a> </li> </ol> </li> </ol> </div> </div> </div> <span class="light" id="edition"> 2nd Edition </span> </div> <div id="main" data-pagefind-filter="category:book" data-pagefind-meta="category:Book" data-pagefind-weight="0.05" data-pagefind-body class="book edition2"> <h1>10.8 Les tripes de Git - Les variables d’environnement</h1> <div> <h2 id="_les_variables_denvironnement">Les variables d’environnement</h2> <div class="paragraph"> <p>Git s’exécute toujours dans un shell <code>bash</code>, et utilise un certain nombre de variables d’environnement pour savoir comment se comporter. Il est parfois pratique de savoir lesquelles, et la façon de les utiliser pour que Git se comporte comme vous le souhaitez. Ceci n’est pas une liste exhaustive de toutes les variables d’environnement que Git utilise, mais nous allons voir les plus utiles.</p> </div> <div class="sect3"> <h3 id="_comportement_général">Comportement général</h3> <div class="paragraph"> <p>Certains aspects du comportement général de Git en tant que programme dépend de variables d’environnement.</p> </div> <div class="paragraph"> <p><strong><code>GIT_EXEC_PATH</code></strong> détermine l’endroit où Git va chercher ses sous-programmes (comme <code>git-commit</code>, <code>git-diff</code>, et d’autres). Vous pouvez vérifier le réglage actuel en lançant <code>git --exec-path</code>.</p> </div> <div class="paragraph"> <p><strong><code>HOME</code></strong> n’est pas en général considérée comme modifiable (trop d’autres choses en dépendent), mais c’est l’endroit où Git va chercher le fichier de configuration général (<em>global</em>). Si vous voulez une installation de Git vraiment portable, complète du point de vue de la configuration générale, vous pouvez surcharger <code>HOME</code> dans le profil (<em>profile</em>).</p> </div> <div class="paragraph"> <p><strong><code>PREFIX</code></strong> est l’équivalent pour la configuration au niveau du système. Git va chercher le fichier <code>$PREFIX/etc/gitconfig</code>.</p> </div> <div class="paragraph"> <p><strong><code>GIT_CONFIG_NOSYSTEM</code></strong>, si elle est définie, invalide l’utilisation du fichier de configuration au niveau du système. Cette variable est utile si la configuration système interfère avec vos commandes et que vous n’avez pas les privilèges pour la changer ou la supprimer.</p> </div> <div class="paragraph"> <p><strong><code>GIT_PAGER</code></strong> contrôle le programme que vous utilisez pour afficher les résultats sur plusieurs pages à la ligne de commande. Si elle n’est pas définie, Git utilisera <code>PAGER</code> à la place.</p> </div> <div class="paragraph"> <p><strong><code>GIT_EDITOR</code></strong> est l’éditeur lancé par Git quand l’utilisateur doit taper du texte (un message de <em>commit</em> par exemple). Si elle n’est pas définie, Git utilisera <code>EDITOR</code>.</p> </div> </div> <div class="sect3"> <h3 id="_les_emplacements_du_dépôt">Les emplacements du dépôt</h3> <div class="paragraph"> <p>Git utilise plusieurs variables d’environnement pour déterminer comment interagir avec le dépôt courant.</p> </div> <div class="paragraph"> <p><strong><code>GIT_DIR</code></strong> est l’emplacement du répertoire <code>.git</code>. S’il n’est pas spécifié, Git remonte l’arbre des répertoires jusqu’à ce qu’il arrive à <code>~</code> ou bien <code>/</code>, en cherchant un répertoire <code>.git</code> à chaque étape.</p> </div> <div class="paragraph"> <p><strong><code>GIT_CEILING_DIRECTORIES</code></strong> contrôle le comportement de Git pendant la recherche d’un répertoire <code>.git</code>. Si vous êtes sur des répertoires qui se chargent lentement (par exemple sur une bande magnétique ou à travers une connexion réseau lente), vous pouvez souhaiter que Git s’arrête plus tôt qu’il ne le ferait habituellemnt, surtout si Git est appelé à la construction de votre appel shell (<em>prompt</em>).</p> </div> <div class="paragraph"> <p><strong><code>GIT_WORK_TREE</code></strong> est l’emplacement de la racine du répertoire de travail pour un dépôt non nu. Si cette variable n’est pas spécifiée, c’est le répertoire parent de <code>$GIT_DIR</code> qui est utilisé.</p> </div> <div class="paragraph"> <p><strong><code>GIT_INDEX_FILE</code></strong> est le chemin du fichier d’index (uniquement pour les dépôts non nus).</p> </div> <div class="paragraph"> <p><strong><code>GIT_OBJECT_DIRECTORY</code></strong> peut être utilisé pour spécifier l’emplacement du répertoire qui se trouve habituellement à <code>.git/objects</code>.</p> </div> <div class="paragraph"> <p><strong><code>GIT_ALTERNATE_OBJECT_DIRECTORIES</code></strong> est une liste séparée par des « : » (formattée comme ceci : <code>/rep/un:/rep/deux:…</code>) qui dit à Git où trouver les objets s’ils ne sont pas dans <code>GIT_OBJECT_DIRECTORY</code>. S’il vous arrive d’avoir beaucoup de projets avec des gros fichiers ayant exactement le même contenu, cette variable peut vous éviter d’en garder trop de copies.</p> </div> </div> <div class="sect3"> <h3 id="_pathspecs"><em>Pathspecs</em></h3> <div class="paragraph"> <p>Une "<em>pathspec</em>" fait référence à la façon dont on spécifie les chemins dans Git, y compris l’utilisation des jokers. Ils sont utilisés dans le fichier <code>.gitignore</code>, mais également à la ligne de commande (<code>git add \*.c</code>).</p> </div> <div class="paragraph"> <p><strong><code>GIT_GLOB_PATHSPECS</code> et <code>GIT_NOGLOB_PATHSPECS</code></strong> contrôlent le comportement par défaut des jokers dans les <em>pathspecs</em>. Si <code>GIT_GLOB_PATHSPECS</code> vaut 1, les caractères jokers agissent comme des jokers (ce qui est le comportement par défaut) ; si <code>GIT_NOGLOB_PATHSPECS</code> vaut 1, les caractères jokers ne correspondent qu’à eux-même, ce qui veut dire que quelque chose comme <code>*.c</code> ne correspondrait qu’à un fichier <em>nommé</em> « \*.c », et non pas tout fichier dont le nom se termine par <code>.c</code>. Vous pouvez surcharger ce comportement pour certains cas en faisant commencer la <em>pathspec</em> par <code>:(glob)</code> pour utiliser le joker, ou bien <code>:(literal)</code> pour une correspondance stricte, comme dans <code>:(glob)\*.c</code>.</p> </div> <div class="paragraph"> <p><strong><code>GIT_LITERAL_PATHSPECS</code></strong> empêche ces deux comportements ; aucun joker ne fonctionnera, et les préfixes de surcharge seront également inopérants.</p> </div> <div class="paragraph"> <p><strong><code>GIT_ICASE_PATHSPECS</code></strong> rend toutes les <em>pathspecs</em> insensibles à la casse.</p> </div> </div> <div class="sect3"> <h3 id="_création_de_commits">Création de <em>commits</em> </h3> <div class="paragraph"> <p>La création finale d’un objet Git <em>commit</em> est habituellement faite par <code>git-commit-tree</code>, qui utilise les variables d’environnement suivantes comme première source d’information, se repliant sur les valeurs de configuration seulement si celles-ci ne sont pas présentes :</p> </div> <div class="paragraph"> <p><strong><code>GIT_AUTHOR_NAME</code></strong> est le nom lisible par un humain dans le champ « Auteur » (<em>author</em>).</p> </div> <div class="paragraph"> <p><strong><code>GIT_AUTHOR_EMAIL</code></strong> est l’adresse de courriel pour le champ « Auteur ».</p> </div> <div class="paragraph"> <p><strong><code>GIT_AUTHOR_DATE</code></strong> est l’horodatage utilisé pourle champ « Auteur ».</p> </div> <div class="paragraph"> <p><strong><code>GIT_COMMITTER_NAME</code></strong> définit le nom humain pour le champ « Validateur » (<em>commiter</em>).</p> </div> <div class="paragraph"> <p><strong><code>GIT_COMMITTER_EMAIL</code></strong> est l’adresse de courriel pour le champ « Validateur ».</p> </div> <div class="paragraph"> <p><strong><code>GIT_COMMITTER_DATE</code></strong> est utilisé pour l’horodatage dans le champ « Validateur ».</p> </div> <div class="paragraph"> <p><strong><code>EMAIL</code></strong> est l’adresse de courriel de repli pour le cas où la valeur de configuration <code>user.email</code> n’est pas définie. Si <em>celle-ci</em> n’est pas définie, Git se replie sur les noms d’utilisateur système et d’hôte.</p> </div> </div> <div class="sect3"> <h3 id="_travail_sur_le_réseau">Travail sur le réseau</h3> <div class="paragraph"> <p>Git utilise la bibliothèque <code>curl</code> pour effectuer des opérations sur HTTP, ainsi <strong><code>GIT_CURL_VERBOSE</code></strong> demande à Git d’émettre tous les messages générés par cette bibliothèque. C’est similaire à <code>curl -v</code> en ligne de commande.</p> </div> <div class="paragraph"> <p><strong><code>GIT_SSL_NO_VERIFY</code></strong> demande à Git de ne pas vérifier les certificats SSL. Cela peut être parfois nécessaire si vous utilisez des certificats auto-signés pour servir des dépôts Git sur HTTPS, ou si vous êtes au milieu de l’installation d’un serveur Git mais n’avez pas encore installé un certificat complet.</p> </div> <div class="paragraph"> <p>Si le taux de données d’une opération HTTP est plus basse que <strong><code>GIT_HTTP_LOW_SPEED_LIMIT</code></strong> octets par seconde pendant plus longtemps que <strong><code>GIT_HTTP_LOW_SPEED_TIME</code></strong> secondes, Git annulera cette opération. Ces valeurs surchargent les valeurs de configuration <code>http.lowSpeedLimit</code> et <code>http.lowSpeedTime</code>.</p> </div> <div class="paragraph"> <p><strong><code>GIT_HTTP_USER_AGENT</code></strong> définit la chaîne d’agent utilisateur utilisée par Git quand il communique sur HTTP. La valeur par défaut est quelque chose comme <code>git/2.0.0</code>.</p> </div> </div> <div class="sect3"> <h3 id="_visualisation_des_différences_et_fusion">Visualisation des différences et Fusion</h3> <div class="paragraph"> <p><strong><code>GIT_DIFF_OPTS</code></strong> est un terme un peu inapproprié. Les seules valeurs valides sont <code>-u<n></code> ou <code>--unified=<n></code>, qui contrôlent le nombre de lignes de contexte affichées dans une commande <code>git diff</code>.</p> </div> <div class="paragraph"> <p><strong><code>GIT_EXTERNAL_DIFF</code></strong> est utilisée comme une surcharge de la valeur de configuration <code>diff.external</code>. Si elle est définie, Git invoquera ce programme quand <code>git diff</code> sera invoquée.</p> </div> <div class="paragraph"> <p><strong><code>GIT_DIFF_PATH_COUNTER</code></strong> et <strong><code>GIT_DIFF_PATH_TOTAL</code></strong> sont utiles à l’intérieur du programme spécifié par <code>GIT_EXTERNAL_DIFF</code> ou <code>diff.external</code>. Le premier represente le fichier de la série dont on est en train de visualiser les différences (en commençant par 1), et le dernier est le nombre total de fichiers dans le lot.</p> </div> <div class="paragraph"> <p><strong><code>GIT_MERGE_VERBOSITY</code></strong> contrôle la sortie pour la stratégie de fusion récursive. Les valeurs admises sont les suivantes :</p> </div> <div class="ulist"> <ul> <li> <p>0 ne sort rien, sauf éventuellement un seul message d’erreur.</p> </li> <li> <p>1 ne montre que les conflits.</p> </li> <li> <p>2 montre aussi les modifications de fichier.</p> </li> <li> <p>3 montre quand les fichiers sont sautés parce qu’ils n’ont pas changé.</p> </li> <li> <p>4 montre tous les chemins qui sont en train d’être traités.</p> </li> <li> <p>5 et au-delà montrent des informations détaillées de débogage.</p> </li> </ul> </div> <div class="paragraph"> <p>La valeur par défaut est 2.</p> </div> </div> <div class="sect3"> <h3 id="_débogage">Débogage</h3> <div class="paragraph"> <p>Vous voulez <em>vraiment</em> savoir de quoi Git est capable ? Git comprend un ensemble de traces assez complet, et tout ce que vous avez à faire est de les activer. Les valeurs possibles de ces variables sont les suivantes :</p> </div> <div class="ulist"> <ul> <li> <p>« true », « 1 » ou « 2 » – la catégorie de trace est écrite sur la sortie d’erreur standard (stderr).</p> </li> <li> <p>Un chemin absolu commençant par <code>/</code> – la sortie de trace sera écrite dans ce fichier.</p> </li> </ul> </div> <div class="paragraph"> <p><strong><code>GIT_TRACE</code></strong> contrôle les traces générales, qui ne rentrent dans aucune catégorie spécifique. Cela inclut le développement des alias et la délégation aux autres sous-programmes.</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ GIT_TRACE=true git lga 20:12:49.877982 git.c:554 trace: exec: 'git-lga' 20:12:49.878369 run-command.c:341 trace: run_command: 'git-lga' 20:12:49.879529 git.c:282 trace: alias expansion: lga => 'log' '--graph' '--pretty=oneline' '--abbrev-commit' '--decorate' '--all' 20:12:49.879885 git.c:349 trace: built-in: git 'log' '--graph' '--pretty=oneline' '--abbrev-commit' '--decorate' '--all' 20:12:49.899217 run-command.c:341 trace: run_command: 'less' 20:12:49.899675 run-command.c:192 trace: exec: 'less'</code></pre> </div> </div> <div class="paragraph"> <p><strong><code>GIT_TRACE_PACK_ACCESS</code></strong> contrôle le traçage d’accès aux fichiers groupés. Le premier champ est le fichier groupé auquel on est en train d’accéder, le second est le décalage dans ce fichier :</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ GIT_TRACE_PACK_ACCESS=true git status 20:10:12.081397 sha1_file.c:2088 .git/objects/pack/pack-c3fa...291e.pack 12 20:10:12.081886 sha1_file.c:2088 .git/objects/pack/pack-c3fa...291e.pack 34662 20:10:12.082115 sha1_file.c:2088 .git/objects/pack/pack-c3fa...291e.pack 35175 # […] 20:10:12.087398 sha1_file.c:2088 .git/objects/pack/pack-e80e...e3d2.pack 56914983 20:10:12.087419 sha1_file.c:2088 .git/objects/pack/pack-e80e...e3d2.pack 14303666 On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working directory clean</code></pre> </div> </div> <div class="paragraph"> <p><strong><code>GIT_TRACE_PACKET</code></strong> permet le traçage au niveau paquet pour les opérations sur le réseau.</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ GIT_TRACE_PACKET=true git ls-remote origin 20:15:14.867043 pkt-line.c:46 packet: git< # service=git-upload-pack 20:15:14.867071 pkt-line.c:46 packet: git< 0000 20:15:14.867079 pkt-line.c:46 packet: git< 97b8860c071898d9e162678ea1035a8ced2f8b1f HEAD\0multi_ack thin-pack side-band side-band-64k ofs-delta shallow no-progress include-tag multi_ack_detailed no-done symref=HEAD:refs/heads/master agent=git/2.0.4 20:15:14.867088 pkt-line.c:46 packet: git< 0f20ae29889d61f2e93ae00fd34f1cdb53285702 refs/heads/ab/add-interactive-show-diff-func-name 20:15:14.867094 pkt-line.c:46 packet: git< 36dc827bc9d17f80ed4f326de21247a5d1341fbc refs/heads/ah/doc-gitk-config # […]</code></pre> </div> </div> <div class="paragraph"> <p><strong><code>GIT_TRACE_PERFORMANCE</code></strong> contrôle la journalisation d’information de performance. La sortie montre combien de temps prend chaque invocation particulère de Git.</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ GIT_TRACE_PERFORMANCE=true git gc 20:18:19.499676 trace.c:414 performance: 0.374835000 s: git command: 'git' 'pack-refs' '--all' '--prune' 20:18:19.845585 trace.c:414 performance: 0.343020000 s: git command: 'git' 'reflog' 'expire' '--all' Counting objects: 170994, done. Delta compression using up to 8 threads. Compressing objects: 100% (43413/43413), done. Writing objects: 100% (170994/170994), done. Total 170994 (delta 126176), reused 170524 (delta 125706) 20:18:23.567927 trace.c:414 performance: 3.715349000 s: git command: 'git' 'pack-objects' '--keep-true-parents' '--honor-pack-keep' '--non-empty' '--all' '--reflog' '--unpack-unreachable=2.weeks.ago' '--local' '--delta-base-offset' '.git/objects/pack/.tmp-49190-pack' 20:18:23.584728 trace.c:414 performance: 0.000910000 s: git command: 'git' 'prune-packed' 20:18:23.605218 trace.c:414 performance: 0.017972000 s: git command: 'git' 'update-server-info' 20:18:23.606342 trace.c:414 performance: 3.756312000 s: git command: 'git' 'repack' '-d' '-l' '-A' '--unpack-unreachable=2.weeks.ago' Checking connectivity: 170994, done. 20:18:25.225424 trace.c:414 performance: 1.616423000 s: git command: 'git' 'prune' '--expire' '2.weeks.ago' 20:18:25.232403 trace.c:414 performance: 0.001051000 s: git command: 'git' 'rerere' 'gc' 20:18:25.233159 trace.c:414 performance: 6.112217000 s: git command: 'git' 'gc'</code></pre> </div> </div> <div class="paragraph"> <p><strong><code>GIT_TRACE_SETUP</code></strong> montre des informations sur ce que Git découvre sur le dépôt et l’environnement avec lequel il interagit.</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ GIT_TRACE_SETUP=true git status 20:19:47.086765 trace.c:315 setup: git_dir: .git 20:19:47.087184 trace.c:316 setup: worktree: /Users/ben/src/git 20:19:47.087191 trace.c:317 setup: cwd: /Users/ben/src/git 20:19:47.087194 trace.c:318 setup: prefix: (null) On branch master Your branch is up-to-date with 'origin/master'. nothing to commit, working directory clean</code></pre> </div> </div> </div> <div class="sect3"> <h3 id="_divers">Divers</h3> <div class="paragraph"> <p><strong><code>GIT_SSH</code></strong>, si spécifié, est un programme qui est invoqué à la place de <code>ssh</code> quand Git essaie de se connecter à un hôte SSH. Il est invoqué comme <code>$GIT_SSH [username@]host [-p <port>] <command></code>. Notez que ce n’est pas le moyen le plus facile de personnaliser la façon dont ssh est invoqué ; il ne prendra pas en compte des paramètres supplémentaires en ligne de commande, donc vous devriez écrire un script l’enveloppant et faire pointer <code>GIT_SSH</code> dessus. Il est sans doute plus facile d’utiliser le fichier <code>~/.ssh/config</code> pour cela.</p> </div> <div class="paragraph"> <p><strong><code>GIT_ASKPASS</code></strong> est une surcharge pour la valeur de configuration <code>core.askpass</code>. C’est le programme invoqué lorsque Git à besoin de demander ses identifiants à l’utilisateur, qui peut s’attendre à un texte comme argument en ligne de commande, et qui devrait retourner la réponse sur la sortie standard (<code>stdout</code>). (Consultez <a href="/book/fr/v2/ch00/s_credential_caching">Stockage des identifiants</a> pour plus d’information sur ce sous-système.)</p> </div> <div class="paragraph"> <p><strong><code>GIT_NAMESPACE</code></strong> contrôle l’accès des références cloisonnées dans des espaces de nom, et est équivalent à l’option <code>--namespace</code>. C’est surtout utile côté serveur, où vous pourriez vouloir stocker plusieurs bifurcations (<em>forks</em>) d’un seul dépôt dans un seul dépôt, en gardant seulement les références séparées.</p> </div> <div class="paragraph"> <p><strong><code>GIT_FLUSH</code></strong> peut être utilisée pour forcer Git à utiliser des entrées/sorties non mises en mémoire tampon (<em>buffer</em>) quand il écrit progressivement dans la sortie standard. Une valeur de 1 fait que Git évacue (<em>flush</em>) plus souvent, une valeur de 0 fait que la sortie est mise en mémoire tampon. La valeur par défaut (si la variable n’est pas définie) est à choisir selon un plan approprié de mise en mémoire tampon en fonction de l’activité et du mode de sortie.</p> </div> <div class="paragraph"> <p><strong><code>GIT_REFLOG_ACTION</code></strong> vous permet de spécifier le texte descriptif écrit dans le <code>reflog</code>. Voici un exemple :</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ GIT_REFLOG_ACTION="my action" git commit --allow-empty -m 'my message' [master 9e3d55a] my message $ git reflog -1 9e3d55a HEAD@{0}: my action: my message</code></pre> </div> </div> </div> <div id="nav"><a href="/book/fr/v2/Les-tripes-de-Git-Maintenance-et-récupération-de-données">prev</a> | <a href="/book/fr/v2/Les-tripes-de-Git-Résumé">next</a></div> </div> </div> </div> </div> <footer> <div class="site-source"> <a href="/site">About this site</a><br> Patches, suggestions, and comments are welcome. </div> <div class="sfc-member"> Git is a member of <a href="/sfc">Software Freedom Conservancy</a> </div> </footer> <a href="#top" class="no-js scrollToTop" id="scrollToTop" data-label="Scroll to top"> <img src="/images/icons/chevron-up@2x.png" width="20" height="20" alt="scroll-to-top"/> </a> <script src="/js/jquery-1.7.1.min.js"></script> <script src="/js/jquery-ui-1.8.18.custom.min.js"></script> <script src="/js/jquery.defaultvalue.js"></script> <script src="/js/session.min.js"></script> <script src="/js/application.min.js"></script> </div> </body> </html>