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.47.0 10/06/24
- 2.46.1 → 2.46.2 no changes
- 2.46.0 07/29/24
- 2.45.1 → 2.45.2 no changes
- 2.45.0 04/29/24
- 2.44.1 → 2.44.2 no changes
- 2.44.0 02/23/24
- 2.43.1 → 2.43.5 no changes
- 2.43.0 11/20/23
- 2.41.1 → 2.42.3 no changes
- 2.41.0 06/01/23
- 2.38.1 → 2.40.3 no changes
- 2.38.0 10/02/22
- 2.36.1 → 2.37.7 no changes
- 2.36.0 04/18/22
- 2.35.1 → 2.35.8 no changes
- 2.35.0 01/24/22
- 2.32.1 → 2.34.8 no changes
- 2.32.0 06/06/21
- 2.30.2 → 2.31.8 no changes
- 2.30.1 02/08/21
- 2.30.0 12/27/20
- 2.29.1 → 2.29.3 no changes
- 2.29.0 10/19/20
- 2.28.1 no changes
- 2.28.0 07/27/20
- 2.27.1 no changes
- 2.27.0 06/01/20
- 2.25.1 → 2.26.3 no changes
- 2.25.0 01/13/20
- 2.23.1 → 2.24.4 no changes
- 2.23.0 08/16/19
- 2.22.2 → 2.22.5 no changes
- 2.22.1 08/11/19
- 2.22.0 06/07/19
- 2.21.1 → 2.21.4 no changes
- 2.21.0 02/24/19
- 2.18.1 → 2.20.5 no changes
- 2.18.0 06/21/18
- 2.17.0 → 2.17.6 no changes
- 2.16.6 12/06/19
- 2.15.4 no changes
- 2.14.6 12/06/19
- 2.13.7 05/22/18
- 2.12.5 no changes
- 2.11.4 09/22/17
- 2.10.5 no changes
- 2.9.5 07/30/17
- 2.8.6 07/30/17
- 2.7.6 07/30/17
- 2.4.12 → 2.6.7 no changes
- 2.3.10 09/28/15
- 2.1.4 → 2.2.3 no changes
- 2.0.5 12/17/14
SYNOPSIS
git clone [--template=
<répertoire-de-modÚles>] [-l
] [-s
] [--no-hardlinks
] [-q
] [-n
] [--bare
] [--mirror
] [-o
<nom>] [-b
<nom>] [-u
<upload-pack>] [--reference
<dépÎt>] [--dissociate
] [--separate-git-dir
<répertoire-git>] [--depth
<profondeur>] [--
[no-
]single-branch
] [--no-tags
] [--recurse-submodules
[=
<spéc-de-chemin>]] [--
[no-
]shallow-submodules
] [--
[no-
]remote-submodules
] [--jobs
<n>] [--sparse
]reject-shallow
] [--filter=
<filtre>] [--also-filter-submodules
]] [--
] <dépÎt> [<répertoire>]
DESCRIPTION
Clone un dépÎt dans un répertoire nouvellement créé, crée une branche de suivi à distance pour chaque branche du dépÎt cloné (visible en utilisant git branch --remotes
) et crée et extrait une branche initiale qui est dupliquée depuis la branche active actuelle du dépÎt cloné.
AprĂšs clonage, un simple git fetch
sans argument va mettre Ă jour toutes les branches de suivi Ă distance, et git pull
sans argument va en plus fusionner la branche master distante dans la branche master actuelle, si elle existe (ceci est inexact quand --single-branch
est indiquĂ©âŻ; voir ci-dessous).
Cette configuration par défaut est réalisée en créant des références aux sommets des branches distantes sous refs/remotes/origin
et en initialisant les variables de configuration remote.origin.url
et remote.origin.fetch
.
OPTIONS
-
-l
-
--local
-
Quand le dépÎt à cloner est sur la machine locale, cette option court-circuite les mécanismes de transport « spécial Git » normaux et clone le dépÎt en faisant une copie de
HEAD
et de tout ce qu’il y a dans les rĂ©pertoires objects et refs. Les fichiers sous le rĂ©pertoire.git/objects/
sont liĂ©s physiquement si possible pour Ă©conomiser l’espace disque.Si le dĂ©pĂŽt est spĂ©cifiĂ© comme un chemin local (par exemple
/chemin/vers/le/dépÎt
), c’est le comportement par dĂ©faut et --local ne sert Ă rien. Si le dĂ©pĂŽt est spĂ©cifiĂ© par une URL, alors ce drapeau est ignorĂ© (et l’optimisation du fait de localitĂ© n’est jamais utilisĂ©e). SpĂ©cifier--no-local
permet de surcharger le comportement par défaut quand la forme/chemin/vers/le/dépÎt
est utilisĂ©e, et provoque l’utilisation de transport Git normal Ă la place.Si le rĂ©pertoire
$GIT_DIR/objects
du dĂ©pĂŽt a des liens symboliques ou est un lien symbolique, le clone Ă©chouera. C’est une mesure de sĂ©curitĂ© pour empĂȘcher la copie involontaire de fichiers en dĂ©rĂ©fĂ©rençant les liens symboliques.NOTEâŻ: cette opĂ©ration peut se dĂ©rouler avec une modification simultanĂ©e du dĂ©pĂŽt source, similaire Ă lâexĂ©cution de
cp-r src dst
tout en modifiantsrc
. -
--no-hardlinks
-
Forcer le processus de clonage depuis un dépÎt sur un systÚme de fichier local à copier les fichiers sous le répertoire
.git\objects
au lieu d’utiliser des liens physiques. Ceci peut ĂȘtre voulu si vous souhaitez faire une copie de sauvegarde de votre dĂ©pĂŽt. -
-s
-
Quand le dĂ©pĂŽt Ă cloner est sur la machine locale, au lieu d’utiliser des liens physiques, crĂ©er automatiquement
.git/objects/info/alternates
pour partager les objets du dĂ©pĂŽt source. Le dĂ©pĂŽt rĂ©sultant dĂ©marre sans aucun objet qui lui soit propre.NOTEâŻ: c’est une opĂ©ration potentiellement dangereuseâŻ; ne l’utilisez pas Ă moins de comprendre ce qu’elle fait. Si vous clonez votre dĂ©pĂŽt en utilisant cette option puis que vous supprimez des branches (ou utilisez toute autre commande Git qui Ă©limine les rĂ©fĂ©rences sur un commit existant) dans le dĂ©pĂŽt source, certains objets peuvent ne plus ĂȘtre rĂ©fĂ©rencĂ©s (ou esseulĂ©s). Ces objets pourraient ĂȘtre supprimĂ©s lors d’opĂ©rations normales de Git (telles que
git commit
) qui appellent automatiquementgit maintenance --auto
. (Voir git-maintenance[1].) Si ces objets sont supprimĂ©s et qu’ils Ă©taient rĂ©fĂ©rencĂ©s dans un dĂ©pĂŽt clonĂ©, alors le dĂ©pĂŽt clonĂ© sera corrompu.Notez que lancer
git repack
sans l’option--local
dans un dépÎt cloné avec--shared
va copier les objets depuis le dĂ©pĂŽt source dans un paquet dans le rĂ©pertoire clonĂ©, Ă©liminant de ce fait les Ă©conomies d’espace disque declone --shared
. Par contre, il est possible de lancergit gc
, qui utilise l’option--local
par dĂ©faut.Si vous souhaitez casser la dĂ©pendance d’un dĂ©pĂŽt clonĂ© avec
--shared
à son dépÎt source, vous pouvez simplement lancergit repack -a
pour copier tous les objets depuis le dépÎt source dans un paquet dans le dépÎt cloné. -
--reference
[-if-able
] <dépÎt> -
Si le <dépÎt> référence est sur la machine locale, créer automatiquement
.git/objects/info/alternates
pour obtenir les objets depuis le <dĂ©pĂŽt> rĂ©fĂ©rence. L’utilisation d’un dĂ©pĂŽt dĂ©jĂ existant comme alternative nĂ©cessitera moins d’objets Ă copier depuis le dĂ©pĂŽt Ă cloner, limitant les coĂ»ts de rĂ©seau et de stockage local. Avec l’utilisation de--reference-if-able
, un rĂ©pertoire inexistant est ignorĂ© avec un message d’avertissement au lieu de faire Ă©chouer le clonage.NOTEâŻ: voir la NOTE pour l’option
--shared
, et aussi l’option--dissociate
. -
--dissociate
-
Emprunter les objets des dépÎts référence spécifiés avec les options
--reference
seulement pour rĂ©duire les transferts rĂ©seau, et arrĂȘter de les emprunter aprĂšs la crĂ©ation d’un clone en crĂ©ant les copies locales nĂ©cessaires des objets empruntĂ©s. Cette option peut aussi ĂȘtre utilisĂ©e lors d’un clonage local depuis un dĂ©pĂŽt qui emprunte dĂ©jĂ des objets Ă un autre dĂ©pĂŽt — le nouveau dĂ©pĂŽt va emprunter des objets au mĂȘme dĂ©pĂŽt, et cette option peut ĂȘtre utilisĂ©e pour arrĂȘter l’emprunt. -
-q
-
--quiet
-
Mode silencieux. L’avancement n’est pas affichĂ© sur le flux d’erreur standard.
-
-v
-
--verbose
-
Mode verbeux. N’agit pas sur l’affichage de l’Ă©tat d’avancement sur le flux d’erreur standard.
-
--progress
-
L’Ă©tat d’avancement est affichĂ© sur la sortie d’erreur standard quand elle est attachĂ©e Ă un terminal, Ă moins que
--quiet
soit spĂ©cifiĂ©. Ce drapeau force l’Ă©tat d’avancement mĂȘme si le flux d’erreur standard n’est pas dirigĂ© vers un terminal. -
--server-option=
<option> -
Transmettre la chaĂźne donnĂ©e au serveur lors d’une communication utilisant la version 2 du protocole. La chaĂźne donnĂ©e ne doit pas contenir de caractĂšre NUL ou LF. La gestion par le serveur des options du serveur, y compris les options inconnues, est spĂ©cifique au serveur. Lorsque plusieurs
--server-option=
<option> sont donnĂ©s, ils sont tous envoyĂ©s Ă l’autre cĂŽtĂ© dans l’ordre indiquĂ© sur la ligne de commande. -
-n
-
--no-checkout
-
Aucune extraction de HEAD n’est effectuĂ©e aprĂšs la fin du clonage.
-
--
[no-
]reject-shallow
-
Ăchouer si le dĂ©pĂŽt source est un dĂ©pĂŽt superficiel. La variable de configuration
clone.rejectShallow
peut ĂȘtre utilisĂ©e pour spĂ©cifier la valeur par dĂ©faut. -
--bare
-
CrĂ©er un dĂ©pĂŽt Git « nu ». Cela signifie qu’au lieu de crĂ©er <rĂ©pertoire> et de placer les fichiers administratifs dans <rĂ©pertoire>`/.git`, faire de <rĂ©pertoire> lui-mĂȘme le
$GIT_DIR
. Cela implique Ă©videmment l’option--no-checkout
parce qu’il n’y a nulle part oĂč extraire l’arbre de travail. De plus, les tĂȘtes de branches distantes sont Ă©galement copiĂ©es directement dans les tĂȘtes de branches locales correspondantes, sans les prĂ©fixer derefs/remotes/origin/
. Lorsque cette option est utilisĂ©e, ni les branches de suivi Ă distance ni les variables de configuration s’y rattachant ne sont crĂ©Ă©es. -
--sparse
-
Employer une extraction clairsemĂ©e, avec seulement les fichiers dans le rĂ©pertoire de plus haut niveau initialement prĂ©sent. La commande git-sparse-checkout[1] peut ĂȘtre utilisĂ©e pour agrandir le rĂ©pertoire de travail si nĂ©cessaire.
-
--filter=
<spéc. du filtre> -
Utiliser la fonction de clonage partiel et demander que le serveur envoie un sous-ensemble d’objets accessibles selon un filtre d’objets donnĂ©. Lorsque l’on utilise
--filter
, le <spéc-de-filtre> fourni est utilisé pour le filtre de clonage partiel. Par exemple,--filter=blob:none
filtrera tous les blobs (contenu des fichiers) jusqu’Ă ce que Git en ait besoin. De mĂȘme,--filter=blob:limit=
<taille> filtrera tous les blobs de taille au moins Ă©gale Ă <taille>. Pour plus de dĂ©tails sur les spĂ©cifications de filtre, voir l’option--filter
dans git-rev-list[1]. -
--also-filter-submodules
-
Applique également le filtre de clonage partiel à tous les sous-modules du dépÎt. Requiert
--filter
et--recurse-submodules
. Ceci peut ĂȘtre activĂ© par dĂ©faut en dĂ©finissant l’option de configurationclone.filterSubmodules
. -
--mirror
-
Construire un miroir du dépÎt source. Ceci implique
--bare
. Par rapport Ă--bare
,--mirror
fait correspondre non seulement les branches locales de la source sur les branches locales de la cible, mais également toutes les références (y compris les branches de suivi à distance, les notes, etc.) et elle définit une configuration de refspec telle que toutes ces références sont réécrites par ungit remote update
dans le dépÎt cible. -
-o
<nom> -
--origin
<nom> -
Au lieu d’utiliser le nom de distant
origin
pour suivre le dépÎt amont, utiliser <nom>. Remplaceclone.defaultRemoteName
dans la configuration. -
-b
<nom> -
--branch
<nom> -
Au lieu de pointer la HEAD nouvellement crĂ©Ă©e sur la branche pointĂ©e par la HEAD du dĂ©pĂŽt clonĂ©, pointer plutĂŽt sur la branche <nom>. Dans un dĂ©pĂŽt non-nu, c’est la branche qui sera extraite.
--branch
accepte aussi des étiquettes et détache alors la HEAD à ce commit dans le dépÎt résultant. -
-u
<upload-pack> -
--upload-pack
<upload-pack> -
Quand cette option est indiquĂ©e et que le dĂ©pĂŽt Ă cloner est accĂ©dĂ© via ssh, ceci spĂ©cifie un chemin diffĂ©rent de celui par dĂ©faut pour la commande lancĂ©e sur l’hĂŽte distant.
-
--template=
<répertoire-de-modÚles> -
SpĂ©cifier le rĂ©pertoire depuis lequel les modĂšles vont ĂȘtre tirĂ©s ; (voir la section « RĂPERTOIRE DE MODĂLES » de git-init[1].)
-
-c
<clé>=
<valeur> -
--config
<clé>=
<valeur> -
DĂ©finir une variable de configuration dans le dĂ©pĂŽt nouvellement crĂ©Ă©âŻ; ceci prend effet immĂ©diatement aprĂšs que le dĂ©pĂŽt est initialisĂ©, mais avant que l’historique distant ne soit rĂ©cupĂ©rĂ© ou qu’un fichier soit extrait. La <clĂ©> est dans le mĂȘme format qu’attendu par git-config[1] (par exemple,
core.eol=true
). Si des valeurs multiples sont fournies pour la mĂȘme clĂ©, chaque valeur sera Ă©crite dans le fichier de configuration. Ceci sĂ©curise, par exemple, l’ajout de spĂ©cificateurs de rĂ©fĂ©rence de rĂ©cupĂ©ration supplĂ©mentaires pour le dĂ©pĂŽt distant d’origine.Du fait de limitations de l’implĂ©mentation actuelle, certaines variables de configuration ne prennent effet qu’aprĂšs la premiĂšre rĂ©cupĂ©ration ou la premiĂšre extraction. Les variables de configuration connues pour ne pas prendre effet sontâŻ:
remote.
<name>.mirror
etremote.
<name>.tagOpt
. Utilisez les options correspondantes--mirror
et--no-tags
Ă la place. -
--depth
<profondeur> -
Créer un clone « superficiel » avec un historique tronqué au nombre spécifié de commits. Implique
--single-branch
Ă moins que--no-single-branch
ne soit fourni pour récupérer les historiques proches des sommets de toutes les branches. Pour cloner des sous-modules de maniÚre superficielle, passer aussi--shallow-submodules
. -
--shallow-since=
<date> -
Créer un clone superficiel avec un historique aprÚs le temps spécifié.
-
--shallow-exclude=
<révision> -
CrĂ©er un clone superficiel avec un historique, en excluant les commits joignables depuis une branche distante spĂ©cifiĂ©e ou une Ă©tiquette. Cette option peut ĂȘtre spĂ©cifiĂ©e plusieurs fois.
-
--
[no-
]single-branch
-
Cloner uniquement l’historique menant au sommet d’une seule branche, soit spĂ©cifiĂ©e par l’option
--branch
, soit la branche primaire sur laquelle laHEAD
du distant pointe. Des récupérations subséquentes dans le dépÎt résultant ne mettront à jour que la branche de suivi à distance de la branche pour laquelle cette option a été utilisée lors du clonage initial. Si laHEAD
du dépÎt distant ne pointait sur aucune branche quand le clonage--single-branch
a Ă©tĂ© fait, aucune branche de suivi Ă distance n’est crĂ©Ă©e. -
--no-tags
-
Ne cloner aucune Ă©tiquette et positionner
remote.<distant>.tagOpt=--no-tags
en configuration, de sorte que les futures opérationsgit pull
etgit fetch
ne tireront aucune Ă©tiquette. Les rĂ©cupĂ©rations explicites d’Ă©tiquette fonctionneront toujours (voir git-fetch[1]).Peut ĂȘtre utilisĂ© en conjonction avec
--single-branch
pour cloner et maintenir une branche sans autre rĂ©fĂ©rence qu’une unique branche clonĂ©e. C’est utile pour, par exemple, maintenir un minimum de clones de la branche par dĂ©faut d’un dĂ©pĂŽt pour l’indexation de la recherche. -
--recurse-submodules
[=
<spéc de chemin>] -
AprĂšs crĂ©ation du clone, initialiser et cloner les sous-modules inclus Ă partir du <spec-de-chemin> fourni. Si aucun =<spec-de-chemin> n’est fourni, tous les sous-modules sont initialisĂ©s et clonĂ©s. Cette option peut ĂȘtre spĂ©cifiĂ©e plus d’une fois pour des spĂ©cificateurs de chemins correspondant Ă des entrĂ©es diffĂ©rentes. Le clone rĂ©sultant a la configuration
submodule.active
rĂ©glĂ©e sur le spĂ©cificateur de chemin fourni ou "." (qui signifie tous les sous-modules) si aucun spĂ©cificateur de chemin n’est fourni.Les sous-modules sont initialisĂ©s et clonĂ©s en utilisant leurs rĂ©glages par dĂ©faut. C’est Ă©quivalent Ă lancer
git submodule update --init --recursive <spéc de chemin>
immĂ©diatement aprĂšs la fin du clonage. Cette option est ignorĂ©e si le dĂ©pĂŽt clonĂ© n’a pas d’arbre de travail/d’extraction (c’est-Ă -dire si--no-checkout
/-n
,--bare
, ou--mirror
est fourni) -
--
[no-
]shallow-submodules
-
Tous les sous-modules qui sont clonés seront superficiels avec une profondeur de 1.
-
--
[no-
]remote-submodules
-
Tous les sous-modules clonĂ©s utiliseront l’Ă©tat de la branche de suivi Ă distance du sous-module pour mettre Ă jour le sous-module, plutĂŽt que le SHA-1 enregistrĂ© par le superprojet. Ăquivalent Ă passer
--remote
Ăgit submodule update
. -
--separate-git-dir=
<répertoire-git> -
Au lieu de placer le dĂ©pĂŽt clone lĂ oĂč il est supposĂ© ĂȘtre, placer le dĂ©pĂŽt clone dans le rĂ©pertoire spĂ©cifiĂ©, puis crĂ©er un lien symbolique Git indĂ©pendant du systĂšme de fichiers. Le rĂ©sultat est un dĂ©pĂŽt Git qui est sĂ©parĂ© de son arbre de travail.
-
--ref-format=
<ref-format> -
SpĂ©cifier le format de stockage de rĂ©f donnĂ© pour le dĂ©pĂŽt. Les valeurs valides sontâŻ:
-
files
pour des fichiers perdus avec des refs emballés. Valeur par défaut. -
reftable
pour le format reftable. Ce format est expérimental et son fonctionnement interne est sujet à changement.
-
-
-j
<n> -
--jobs
<n> -
Le nombre de sous-modules rĂ©cupĂ©rĂ©s en mĂȘme temps. Par dĂ©faut, l’option
submodule.fetchJobs
. - <dépÎt>
-
Le <dĂ©pĂŽt> (Ă©ventuellement distant) depuis lequel cloner. Voir les sections URL GIT ci-dessous pour plus d’information sur la spĂ©cification de dĂ©pĂŽts.
- <répertoire>
-
Le nom du nouveau rĂ©pertoire dans lequel cloner. La partie « humaine » du dĂ©pĂŽt source est utilisĂ©e si aucun <rĂ©pertoire> n’est fourni explicitement (
dépÎt
pour/chemin/vers/un/dépÎt.git
ettoto
pourhĂŽte.xz:toto/.git
). Cloner dans un rĂ©pertoire existant n’est permis que si le rĂ©pertoire en question est vide. -
--bundle-uri=
<uri> -
Avant de rĂ©cupĂ©rer depuis le distant, rĂ©cupĂ©rer un colis Ă partir du <uri> donnĂ© et dĂ©compresser les donnĂ©es dans le dĂ©pĂŽt local. Les rĂ©fĂ©rences dans le colis seront stockĂ©es dans l’espace de nom cachĂ©
refs/bundle/*
. Cette option est incompatible avec--depth
,--shallow-since
, et--shallow-exclude
.
URL GIT
En gĂ©nĂ©ral, les URL contiennent une information sur le protocole de transport, l’adresse du serveur distant et le chemin vers le dĂ©pĂŽt. En fonction du protocole de transport, certaines de ces informations peuvent ĂȘtre absentes.
Git supporte les protocoles ssh, git, http et https (en plus, ftp et ftps peuvent ĂȘtre utilisĂ©s pour la rĂ©cupĂ©ration, mais ceux-ci sont inefficaces et dĂ©conseillĂ©s ; ne les utilisez pas).
Le transport natif (c’est-Ă -dire l’URL git://) n’utilise pas d’authentification et ne devrait ĂȘtre utilisĂ© qu’avec prĂ©caution sur des rĂ©seaux non sĂ©curisĂ©s.
Les syntaxes suivantes peuvent ĂȘtre utilisĂ©es avec eux :
-
ssh://
[<utilisateur>@
]<hĂŽte>[:
<port>]/
<chemin-du-dépÎt-git> -
git://
<hĂŽte>[:<port>]/
<chemin-du-dépÎt-git> -
http
[s
]://
<hĂŽtet>[:
<port>]/
<chemin-du-dépÎt-git> -
ftp
[s
]://
<hĂŽte>[:
<port>]/
<chemin-du-dépÎt-git>
Une syntaxe alternative de type scp peut aussi ĂȘtre utilisĂ©e pour le protocole ssh :
-
[<utilisateur>
@
]<hĂŽte>:/
<chemin-du-dépÎt-git>
Cette syntaxe n’est reconnue que s’il n’y a pas de barre oblique devant les premiers deux-points. Cela permet de prendre en charge des chemins locaux qui contiendraient des deux-points. Par exemple, le chemin local toto:titi
pourrait ĂȘtre spĂ©cifiĂ© comme un chemin absolu ou ./toto:titi
pour Ă©viter d’ĂȘtre interprĂ©tĂ© comme une url ssh.
Les protocoles ssh et git supportent en plus l’expansion ~
<utilisateur> âŻ:
-
ssh://
[<utilisateur>@
]<hĂŽte>[:
<port>]/~
<utilisateur>/
<chemin-du-dépÎt-git> -
git://
<hĂŽte>[:
<port>]/~
<utilisateur>/
<chemin-du-dépÎt-git> -
[<utilisateur>
@
]<hĂŽte>:~
<utilisateur>/
<chemin-du-dépÎt-git>
Pour les dépÎts locaux, supportés aussi nativement par Git, les syntaxes suivantes sont aussi admises :
-
/chemin/du/dépÎt.git/
Ces deux syntaxes sont Ă peu prĂšs Ă©quivalentes, Ă part que la premiĂšre implique l’option --local
.
git clone
, git fetch
et git pull
, mais pas git push
, acceptent également un fichier paquet approprié. Voir git-bundle[1].
Quand Git ne sait pas comment gĂ©rer un certain protocole, il essaie d’utiliser l’assistant de gestion de distant remote-
<transport>, s’il existe. Pour requĂ©rir l’emploi d’un assistant spĂ©cifique, la syntaxe suivante peut ĂȘtre utilisĂ©eâŻ:
-
<transport>::<adresse>
oĂč <adresse> peut ĂȘtre un chemin, un serveur et chemin, ou une chaĂźne URL arbitraire reconnue par l’assistant de gestion de distant invoquĂ©. Voir gitremote-helpers[7] pour plus de dĂ©tails.
S’il y a un grand nombre de dĂ©pĂŽts aux noms similaires et que vous souhaitez utiliser un format diffĂ©rent pour eux (de telle sorte que les URL que vous utiliserez seront rĂ©Ă©crites en URL fonctionnelles), vous pouvez crĂ©er une section de configuration de la forme :
[url "<veritable-base-d-url>"] insteadOf = <autre-base-d’URL>
Par exemple, avec ceci :
[url "git://git.host.xz/"] insteadOf = host.xz:/chemin/vers/ insteadOf = travail:
une URL comme « travail:depot.git » ou « host.xz:/chemin/vers/depot.git » sera réécrite dans tout contexte qui requiert une URL en « git://git.host.xz/depot.git ».
Si vous souhaitez réécrire les URL seulement pour pousser, vous pouvez créer une section de configuration de la forme :
[url "<veritable-base-d’URL>"] pushInsteadOf = <autre-base-d-URL>
Par exemple, avec ceci :
[url "ssh://exemple.org/"] pushInsteadOf = git://exemple.org/
une URL telle que « git://exemple.org/chemin/vers/le/depot.git » sera rĂ©Ă©crite en « ssh://exemple.org/chemin/vers/le/depot.git » pour les poussĂ©es, mais les tirages utiliseront encore l’URL originale.
EXEMPLES
-
Cloner depuis l’amont :
$ git clone git://git.kernel.org/pub/scm/.../linux.git mon-linux $ cd mon-linux $ make
-
Créer un clone local qui emprunte depuis le répertoire actuel, sans rien extraire :
$ git clone -l -s -n . ../copie $ cd ../copie $ git show-branch
-
Cloner depuis l’amont tout en empruntant depuis une rĂ©pertoire local existant :
$ git clone --reference /git/linux.git \ git://git.kernel.org/pub/scm/.../linux.git \ mon-linux $ cd mon-linux
-
Créer un dépÎt nu pour publier les modifications :
$ git clone --bare -l /home/proj/.git /pub/scm/proj.git
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. |
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 .