Klonen in ein nicht leeres Git-Verzeichnis
In diesem Artikel erfahren Sie, wie Sie ein Git-Repository in einen nicht leeren Ordner klonen. Diese Aktion ist praktisch, wenn Sie die Dateien in Ihrem Remote-Repository mit den Dateien in Ihrem aktuellen lokalen Repository zusammenführen möchten.
Klonen in ein nicht leeres Git-Verzeichnis in Git
Das Klonen eines entfernten Repositorys ist einfach. Wir verwenden den folgenden Befehl.
git clone <repository-url> <directory>
Dadurch wird das Remote-Repository in das angegebene Verzeichnis geklont. Das Verzeichnis sollte jedoch leer sein.
Sie erhalten eine Schwerwiegende Warnung, wenn Sie versuchen, ein nicht leeres Repo zu klonen, wie unten gezeigt.
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.
Da das Verzeichnis Delftscopetech
bereits existiert und einige Dateien enthält, können wir den Befehl git clone
nicht verwenden, um unser Repository zu klonen.
Wenn Sie die Dateien im Verzeichnis nicht benötigen, können Sie sie löschen, aber wenn Sie die Dateien in beiden Repositorys zusammenführen möchten, verwenden Sie die folgende Methode.
-
Öffnen Sie das Verzeichnis, in das Sie Ihr Remote-Repository klonen möchten.
cd \Delftscopetech1
-
Richten Sie mit diesem Befehl ein neues Repository ein.
git init
-
Fügen Sie das Remote-Repository hinzu
git remote add origin https://github.com/Wachira11ke/Delftscopetech.git
-
Ziehen und zusammenführen
git pull origin main --allow-unrelated-histories
Beispiel:
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
Wir haben unser Remote-Repository erfolgreich mit einem nicht leeren Verzeichnis in unser lokales Repository geklont.
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