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.45.1 → 2.47.0 no changes
- 2.45.0 04/29/24
- 2.37.1 → 2.44.2 no changes
- 2.37.0 06/27/22
- 2.36.1 → 2.36.6 no changes
- 2.36.0 04/18/22
- 2.35.1 → 2.35.8 no changes
- 2.35.0 01/24/22
- 2.30.1 → 2.34.8 no changes
- 2.30.0 12/27/20
- 2.29.1 → 2.29.3 no changes
- 2.29.0 10/19/20
- 2.23.1 → 2.28.1 no changes
- 2.23.0 08/16/19
- 2.18.1 → 2.22.5 no changes
- 2.18.0 06/21/18
- 2.17.1 → 2.17.6 no changes
- 2.17.0 04/02/18
- 2.10.5 → 2.16.6 no changes
- 2.9.5 07/30/17
- 2.8.6 no changes
- 2.7.6 07/30/17
- 2.6.7 05/05/17
- 2.4.12 → 2.5.6 no changes
- 2.3.10 09/28/15
- 2.1.4 → 2.2.3 no changes
- 2.0.5 12/17/14
SYNOPSIS
git remote [-v | --verbose] git remote add [-t <branche>] [-m <master>] [-f] [--[no-]tags] [--mirror=(fetch|push)] <nom> <URL> git remote rename [--[no-]progress] <ancien> <nouveau> git remote remove <nom> git remote set-head <nom> (-a | --auto | -d | --delete | <branche>) git remote set-branches [--add] <nom> <branche>… git remote get-url [--push] [--all] <nom> git remote set-url [--push] <nom> <nouvelle-URL> [<ancienne-url>] git remote set-url --add [--push] <nom> <nouvelle-URL> git remote set-url --delete [--push] <nom> <URL> git remote [-v | --verbose] show [-n] <nom>… git remote prune [-n | --dry-run] <nom>… git remote [-v | --verbose] update [-p | --prune] [(<groupe> | <distant>)…]
COMMANDES
Sans argument, affiche la liste des distants existants. Quelques sous-commandes permettent d’appliquer des opérations sur les distants.
- add
-
Ajouter un distant nommé <nom> pour le dépôt à <URL>. La commande
git fetch <nom>
peut alors être utilisée pour créer et mettre à jour les branches de suivi à distance <nom>/<branche>.Avec l’option
-f
,git fetch <nom>
est lancé immédiatement après la mise en place des informations distantes.Avec l’option
--tags
,git fetch <nom>
importe chaque étiquette du dépôt distant.Avec l’option
--no-tags
,git fetch <nom>
n’importe pas les étiquettes du dépôt distant.Par défaut, seules les étiquettes sur les branches récupérées sont importées (voir git-fetch[1]).
Avec l’option
-t <branche>
, au lieu du spécificateur par défaut de glob pour que le distant suive toutes les branches dans l’espace de nomsrefs/remotes/<nom>/
, un spécificateur de référence de suivi uniquement pour<branche>
est créé. Vous pouvez donner plus d’un-t <branche>
pour suivre plusieurs branches sans saisir toutes les branches.Avec l’option
-m <master>
, une réf symboliquerefs/remotes/<nom>/HEAD
est mise en place pour pointer sur la branche<master>
du distant. Voir aussi la commande set-head.Lorsqu’un miroir est créé avec
--mirror=fetch
, les refs ne seront pas stockées dans l’espace de noms refs/remotes/, mais tout ce qui se trouve dans refs/ sur le serveur distant sera directement reflété dans refs/ dans le dépôt local. Cette option n’a de sens que dans les dépôts nus, car une récupération écraserait tous les commit locaux.Lorsqu’un miroir de poussé est créé avec
--mirror=push
, alorsgit push
se comportera toujours comme si--mirror
était passé. - rename
-
Renommer le distant nommé <ancien> en <nouveau>. Toutes les branches de suivi à distance et les paramètres de configuration du distant sont mis à jour.
Dans le cas où <ancien> et <nouveau> sont identiques, et que <ancien> est un fichier sous
$GIT_DIR/remotes
ou$GIT_DIR/branches
, le distant est converti au format de fichier de configuration. - remove
- rm
-
Supprimer le distant nommé <nom>. Toutes les branches de suivi à distance et tous les paramètres de configuration du distant sont supprimés.
- set-head
-
Définir ou supprimet la branche par défaut (c’est-à-dire la cible de la référence symbolique
refs/remotes/<nom>/HEAD
) pour le distant nommé. Il n’est pas nécessaire de disposer d’une branche par défaut pour un distant, mais cela permet de spécifier le nom du distant à la place d’une branche spécifique. Par exemple, si la branche par défaut pourorigin
est définie àmaster
, alorsorigin
peut être spécifié là où vous spécifieriez normalementorigin/master
.Avec
-d
ou--delete
, la référence symboliquerefs/remotes/<nom>/HEAD
est supprimée.Avec
-a
ou--auto
, le distant est interrogé pour déterminer sonHEAD
, puis la référence symboliquerefs/remotes/<nom>/HEAD
est définie sur la même branche. Par exemple, si le distantHEAD
est pointé surnext
,git remote set-head origin -a
définira la référence symboliquerefs/remotes/origin/HEAD
surrefs/remotes/origin/next
. Cela ne fonctionnera que sirefs/remotes/origin/next
existe déjà ; sinon, il faut d’abord la récupérer.Utiliser
<branche>
pour définir la référence symboliquerefs/remotes/<nom>/HEAD
explicitement. Par exemple,git remote set-head origin master
définira la référence symboliquerefs/remotes/origin/HEAD
àrefs/remotes/origin/master
. Cela ne fonctionnera que sirefs/remotes/origin/master
existe déjà ; sinon, il faut d’abord le récupérer. - set-branches
-
Modifier la liste des branches suivies par le distant nommé. Cela peut être utilisé pour suivre un sous-ensemble des branches distantes disponibles après la configuration initiale d’un distant.
Les branches nommées seront interprétées comme si elles étaient spécifiées avec l’option
-t
sur la ligne de commandegit remote add
.Avec
--add
, au lieu de remplacer la liste des branches actuellement suivies, ajouter à cette liste. - get-url
-
Récupèrer les URL pour un distant. Les configurations pour
insteadOf
etpushInsteadOf
sont développées ici. Par défaut, seule la première URL est listée.Avec
--push
, on interroge les URL de poussée plutôt que les URL de récupération.Avec
--all
, toutes les URL du distant seront listées. - set-url
-
Modifier les URL pour le distant. Fixer la première URL pour le distant <nom> qui correspond à la regex <ancienne-url> (première URL si aucune <ancienne-url> n’est donnée) à <nouvelle-url>. Si <ancienne-url> ne correspond à aucune URL, une erreur se produit et rien n’est modifié.
Avec
--push
, les URL de poussée sont manipulées au lieu des URL de récupération.Avec
--add
, au lieu de modifier les URL existantes, on ajoute une nouvelle URL.Avec
--delete
, au lieu de changer les URL existantes, toutes les URL correspondant à la regex <URL> sont supprimées pour le distant <nom>. Essayer de supprimer toutes les URL non poussée est une erreur.Notez que l’URL de poussée et l’URL de récupération, même si elles peuvent être définies différemment, doivent toujours se référer au même endroit. Ce que vous avez poussé à l’URL de poussée doit être ce que vous verriez si vous alliez récupérer immédiatement à l’URL de récupération. Si vous essayez de récupérer depuis un endroit (par exemple votre site en amont) et de pousser à un autre (par exemple votre dépôt de publication), utilisez deux distants distincts.
- show
-
Fournir quelques informations sur le dépôt <nom>.
Avec l’option
-n
, les branches distantes ne sont pas interrogées en premier avecgit ls-remote <nom>
; les informations en cache sont utilisées à la place. - prune
-
Supprimer les références périmées associées à <nom>. Par défaut, les branches de suivi à distance périmées sous <nom> sont supprimées, mais en fonction de la configuration globale et de la configuration du distant, nous pourrions même élaguer les étiquettes locales qui n’y ont pas été poussées. Équivalent à
git fetch --prune <nom>
, sauf qu’aucune nouvelle référence ne sera récupérée.Voir la section ÉLAGAGE de git-fetch[1] pour savoir ce qui sera élagué en fonction des différentes configurations.
Avec l’option
--dry-run
, signaler les branches qui seraient élaguées, mais ne pas réellement les élaguer. - update
-
Récupérer les mises à jour pour les distants ou les groupes de distants dans le dépôt comme défini par
remotes.<groupe>
. Si aucun groupe ni aucun distant n’est spécifié sur la ligne de commande, le paramètre de configurationremotes.default
sera utilisé ; siremotes.default
n’est pas défini, tous les distants dont le paramètre de configurationremote.<nom>.skipDefaultUpdate
n’est pas défini à true seront mis à jour. (Voir git-config[1]).Avec l’option
--prune
, lancer l’élagage contre tous les distants qui sont mises à jour.
DISCUSSION
Le paramètrage des informations de connexion est réalisé par les variables de configuration remote.origin.url
et remote.origin.fetch
. (Voir git-config[1]).
STATUT DE SORTIE
En cas de succès, l’état de sortie est 0
.
Lorsque des sous-commandes telles que add, rename et remove ne trouvent pas le distant en question, l’état de sortie est 2
. Lorsque le distant existe déjà, l’état de sortie est 3
.
Pour toute autre erreur, l’état de sortie peut être toute autre valeur non nulle.
EXEMPLES
-
Ajouter un nouveau distant, le récupérer et en extraire une branche
$ git remote origin $ git branch -r origin/HEAD -> origin/master origin/master $ git remote add staging git://git.kernel.org/.../gregkh/staging.git $ git remote origin staging $ git fetch staging ... From git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging * [new branch] master -> staging/master * [new branch] staging-linus -> staging/staging-linus * [new branch] staging-next -> staging/staging-next $ git branch -r origin/HEAD -> origin/master origin/master staging/master staging/staging-linus staging/staging-next $ git switch -c staging staging/master ...
-
Imiter git clone mais ne suivre que certaines branches sélectionnées
$ mkdir project.git $ cd project.git $ git init $ git remote add -f -t master -m master origin git://example.com/git.git/ $ git merge origin
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 .