Cloner dans un répertoire Git non vide
Cet article vous apprendra à cloner un référentiel Git dans un dossier non vide. Cette action est pratique lorsque vous souhaitez fusionner les fichiers de votre référentiel distant avec les fichiers de votre référentiel local actuel.
Cloner dans un répertoire Git non vide dans Git
Le clonage d’un référentiel distant est facile. Nous utilisons la commande ci-dessous.
git clone <repository-url> <directory>
Cela clonera le référentiel distant dans le répertoire spécifié. Cependant, le répertoire doit être vide.
Vous recevrez un message Avertissement fatal si vous essayez de cloner dans un référentiel non vide, comme indiqué ci-dessous.
pc@JOHN MINGW64 ~/Git (main)
$ git clone https://github.com/Wachira11ke/Delftscopetech.git
fatal: destination path 'Delftscopetech' already exists and is not an empty directory.
Comme le répertoire Delftscopetech
existe déjà et contient certains fichiers, nous ne pouvons pas utiliser la commande git clone
pour cloner notre référentiel.
Si vous n’avez pas besoin des fichiers dans le répertoire, vous pouvez les supprimer, mais si vous souhaitez fusionner les fichiers dans les deux référentiels, utilisez la méthode ci-dessous.
-
Ouvrez le répertoire dans lequel vous souhaitez cloner votre référentiel distant.
cd \Delftscopetech1
-
Configurez un nouveau référentiel avec cette commande.
git init
-
Ajouter le référentiel distant
git remote add origin https://github.com/Wachira11ke/Delftscopetech.git
-
Tirez et fusionnez
git pull origin main --allow-unrelated-histories
Exemple:
pc@JOHN MINGW64 ~/Git (main)
$ cd \Delftscopetech1
pc@JOHN MINGW64 ~/Git/Delftscopetech1 (main)
$ git init
Initialized empty Git repository in C:/Users/pc/Git/Delftscopetech1/.git/
pc@JOHN MINGW64 ~/Git/Delftscopetech1 (master)
$ git remote add origin https://github.com/Wachira11ke/Delftscopetech.git
pc@JOHN MINGW64 ~/Git/Delftscopetech1 (master)
$ git pull origin master --allow-unrelated-histories
fatal: couldn't find remote ref master
pc@JOHN MINGW64 ~/Git/Delftscopetech1 (master)
$ git pull origin main --allow-unrelated-histories
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 610 bytes | 3.00 KiB/s, done.
From https://github.com/Wachira11ke/Delftscopetech
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
Nous avons cloné avec succès notre référentiel distant dans notre référentiel local avec un répertoire non vide.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn