Skip to main content

Création de dépôt distants

Découvrez comment utiliser vos dépôts locaux sur votre ordinateur et les dépôts distants hébergés sur GitHub Enterprise Cloud.

Platform navigation

Note

Cet article contient des commandes ou des exemples qui utilisent le domaine github.com. Vous pouvez accéder à GitHub dans un domaine différent, tel que octocorp.ghe.com.

Ajout d’un dépôt distant

Pour ajouter un nouveau dépôt distant, utilisez la commande git remote add sur le terminal, dans le répertoire dans lequel votre dépôt est stocké.

La commande git remote add prend deux arguments :

  • Un nom de dépôt distant, par exemple origin
  • Une URL distante, par exemple, https://github.com/OWNER/REPOSITORY.git

Par exemple :

$ git remote add origin https://github.com/OWNER/REPOSITORY.git
# Set a new remote

$ git remote -v
# Verify new remote
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

Pour plus d’informations sur l’URL à utiliser, consultez « À propos des référentiels distants ».

Résolution des problèmes : l’origine distante existe déjà

Cette erreur signifie que vous avez tenté d’ajouter un dépôt distant portant un nom existant dans votre dépôt local.

$ git remote add origin https://github.com/octocat/Spoon-Knife.git
> fatal: remote origin already exists.

Pour corriger ce problème, vous pouvez :

  • Utiliser un nom différent pour le nouveau dépôt distant.
  • Renommer le dépôt distant existant avant d’ajouter le nouveau. Pour plus d’informations, consultez « Renommer un dépôt distant » ci-dessous.
  • Supprimer le dépôt distant existant avant d’ajouter le nouveau. Pour plus d’informations, consultez « Renommer un dépôt distant » ci-dessous.

Modification de l’URL d’un dépôt distant

La commande git remote set-url modifie une URL de dépôt distant existant.

Conseil : Pour plus d’informations sur la différence entre les URL HTTPS et SSH, consultez « À propos des référentiels distants ».

La commande git remote set-url prend deux arguments :

  • Un nom de dépôt distant existant. Par exemple, origin ou upstream sont deux choix courants.

  • Nouvelle URL pour le dépôt distant. Par exemple :

    • Si vous effectuez une mise à jour pour utiliser HTTPS, votre URL pourrait ressembler à ceci :
    https://github.com/OWNER/REPOSITORY.git
    
    • Si vous effectuez une mise à jour pour utiliser SSH, votre URL pourrait ressembler à ceci :
    git@github.com:OWNER/REPOSITORY.git
    

Basculement d’URL de dépôts distants de SSH vers HTTPS

  1. Ouvrez TerminalTerminalGit Bash.

  2. Remplacez le répertoire de travail actuel par votre projet local.

  3. Répertoriez vos dépôts distants existants afin d’obtenir le nom du dépôt distant que vous souhaitez modifier.

    $ git remote -v
    > origin  git@github.com:OWNER/REPOSITORY.git (fetch)
    > origin  git@github.com:OWNER/REPOSITORY.git (push)
    
  4. Modifiez l’URL de votre dépôt distant de SSH en HTTPS avec la git remote set-url commande.

    git remote set-url origin https://github.com/OWNER/REPOSITORY.git
    
  5. Vérifiez que l’URL du dépôt distant a changé.

    $ git remote -v
    # Verify new remote URL
    > origin  https://github.com/OWNER/REPOSITORY.git (fetch)
    > origin  https://github.com/OWNER/REPOSITORY.git (push)
    

La prochaine fois que vous exécuterez les commandes git fetch, git pull ou git push sur le dépôt distant, vous serez invité à fournir vos nom d’utilisateur et mot de passe GitHub. Lorsque Git vous invite à entrer votre mot de passe, entrez votre personal access token. Vous pouvez également utiliser une assistance d’informations d’identification comme Git Credential Manager. L’authentification par mot de passe pour Git a été supprimée en faveur de méthodes d’authentification plus sécurisées. Pour plus d’informations, consultez « Gestion de vos jetons d'accès personnels ».

Vous pouvez utiliser une assistance relative aux informations d’identification pour que Git se rappelle vos nom d’utilisateur et personal access token chaque fois qu’il s’adresse à GitHub.

Basculer des URL de dépôts distants de HTTPS vers SSH

  1. Ouvrez TerminalTerminalGit Bash.

  2. Remplacez le répertoire de travail actuel par votre projet local.

  3. Répertoriez vos dépôts distants existants afin d’obtenir le nom du dépôt distant que vous souhaitez modifier.

    $ git remote -v
    > origin  https://github.com/OWNER/REPOSITORY.git (fetch)
    > origin  https://github.com/OWNER/REPOSITORY.git (push)
    
  4. Modifiez l’URL de votre dépôt distant de HTTPS en SSH avec la commande git remote set-url.

    git remote set-url origin git@github.com:OWNER/REPOSITORY.git
    
  5. Vérifiez que l’URL du dépôt distant a changé.

    $ git remote -v
    # Verify new remote URL
    > origin  git@github.com:OWNER/REPOSITORY.git (fetch)
    > origin  git@github.com:OWNER/REPOSITORY.git (push)
    

Résolution des problèmes : Aucun dépôt distant « [nom] »

Cette erreur signifie que le dépôt distant que vous avez tenté de modifier n’existe pas :

$ git remote set-url sofake https://github.com/octocat/Spoon-Knife
> fatal: No such remote 'sofake'

Vérifiez que vous avez correctement tapé le nom du dépôt distant.

Changement du nom d’un dépôt distant

Utilisez la commande git remote rename pour renommer un dépôt distant existant.

La commande git remote rename prend deux arguments :

  • Un dépôt distant existant, par exemple, origin
  • Un nouveau nom pour le dépôt distant, par exemple, destination

Exemple de changement de nom d’un dépôt distant

Ces exemples supposent que vous clonez à l’aide de HTTPS, ce qui est recommandé.

$ git remote -v
# View existing remotes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

$ git remote rename origin destination
# Change remote name from 'origin' to 'destination'

$ git remote -v
# Verify remote's new name
> destination  https://github.com/OWNER/REPOSITORY.git (fetch)
> destination  https://github.com/OWNER/REPOSITORY.git (push)

Résolution des problèmes : Impossible de changer le nom de la section « remote.[ancien nom] » en « remote.[nouveau nom] »

Cette erreur signifie que l’ancien nom de dépôt distant que vous avez tapé n’existe pas.

Vous pouvez vérifier les dépôts distants qui existent avec la commande git remote -v :

$ git remote -v
# View existing remotes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

Résolution des problèmes : Le dépôt distant [nouveau nom] existe déjà

Cette erreur signifie que le nom de dépôt distant que vous souhaitez utiliser existe déjà. Pour résoudre ce problème, utilisez un autre nom de dépôt distant ou renommez la dépôt distant d’origine.

Suppression du nom d’un dépôt distant

Utilisez la commande git remote rm pour supprimer une URL de dépôt distant de votre dépôt.

La commande git remote rm prend un argument :

  • Un nom de dépôt distant, par exemple destination

La suppression de l’URL du dépôt distant de votre dépôt a seulement pour effet de dissocier dépôts local et distant. Elle ne supprime pas le dépôt distant.

Exemple de suppression d’un dépôt distant

Ces exemples supposent que vous clonez à l’aide de HTTPS, ce qui est recommandé.

$ git remote -v
# View current remotes
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)
> destination  https://github.com/FORKER/REPOSITORY.git (fetch)
> destination  https://github.com/FORKER/REPOSITORY.git (push)

$ git remote rm destination
# Remove remote
$ git remote -v
# Verify it's gone
> origin  https://github.com/OWNER/REPOSITORY.git (fetch)
> origin  https://github.com/OWNER/REPOSITORY.git (push)

Remarque : la commande git remote rm ne supprime pas le dépôt distant du serveur. Elle supprime simplement le dépôt distant et ses références de votre dépôt local.

Résolution des problèmes : Impossible de supprimer la section config « remote.[nom] »

Cette erreur signifie que le dépôt distant que vous avez tenté de supprimer n’existe pas :

$ git remote rm sofake
> error: Could not remove config section 'remote.sofake'

Vérifiez que vous avez correctement tapé le nom du dépôt distant.

Pour aller plus loin