başka bir dizinden git clone


156

Başka bir dizinden repo klonlamaya çalışıyorum.

Diyelim ki içinde bir repo var C:/folder1veC:/folder2

İşi folder1içine kopyalamak istiyorum folder2.

Bunu yapmak için komut istemine ne yazardım?

Genellikle bir URL'yi klonlarken bir dosya yolundan ziyade sağlanır, ancak şu anda sadece pratik yapıyor ve Git'i kullanmaya çalışıyorum.


4
kullanabilirsiniz git clone C:\folder1\.git folder2. Klasör2'nin görünmesini istediğiniz dizinden çalıştırmanız gerekir
Akash Agrawal

Windows'daysanız ve hala çalışmıyorsa, havuz yoluna `file: \` başlığını eklemeniz gerekebilir. Bu stackoverflow.com/questions/37422428/…
Jacob H

Yanıtlar:


173
cd /d c:\
git clone C:\folder1 folder2

İçin belgelerdengit clone :

Git tarafından yerel olarak da desteklenen yerel depolar için aşağıdaki sözdizimleri kullanılabilir:

/path/to/repo.git/

file:///path/to/repo.git/

Bu iki sözdizimi, daha önce ima edilen --local seçeneği hariç, çoğunlukla eşdeğerdir.


4
@grahamesd, gerçekten bir ağ klasörünü sürücü olarak eşlemenize gerek yok çünkü GIT bu şekilde oldukça iyi klonlayabilir:git clone //pc_name/git
vladimir_ki

18

Bunların hiçbiri benim için işe yaramadı. Pencerelerde git-bash kullanıyorum. Sorunun dosya yolu biçimlendirmeyle ilgili olduğunu öğrendim.

YANLIŞ:

git clone F:\DEV\MY_REPO\.git

DOĞRU:

git clone /F/DEV/MY_REPO/.git

Bu komutlar, repo klasörünün görünmesini istediğiniz klasörden yapılır.


Aşağıdaki komut bash'de çalışıyor: git clone F: \ DEV \ MY_REPO
M.Hassan

Git-bash için ters eğik çizgi /veya çift eğik çizgi `\\` kullanabilirsiniz. Ama tek bir eğik çizgi yok.
Elad Weiss

15

Komutun Linux'ta benzer şekilde çalıştığını belirtmek gerekir:

git clone path/to/source/folder path/to/destination/folder

7

Göründüğü kadar kolay.

14:27:05 ~$ mkdir gittests
14:27:11 ~$ cd gittests/
14:27:13 ~/gittests$ mkdir localrepo
14:27:20 ~/gittests$ cd localrepo/
14:27:21 ~/gittests/localrepo$ git init
Initialized empty Git repository in /home/andwed/gittests/localrepo/.git/
14:27:22 ~/gittests/localrepo (master #)$ cd ..
14:27:35 ~/gittests$ git clone localrepo copyoflocalrepo
Cloning into 'copyoflocalrepo'...
warning: You appear to have cloned an empty repository.
done.
14:27:42 ~/gittests$ cd copyoflocalrepo/
14:27:46 ~/gittests/copyoflocalrepo (master #)$ git status
On branch master

Initial commit

nothing to commit (create/copy files and use "git add" to track)
14:27:46 ~/gittests/copyoflocalrepo (master #)$ 

7

Yolunuzda yer varsa, çift tırnak içine alın:

$ git clone "//serverName/New Folder/Target" f1/

3

kullanım git clone c:/folder1 c:/folder2

git clone [--template=<template_directory>] [-l] [-s] [--no-hardlinks]
[-q] [-n] [--bare] [--mirror] [-o <name>] [-b <name>] [-u <upload-pack>]
[--reference <repository>] [--separate-git-dir <git dir>] [--depth <depth>]
[--[no-]single-branch] [--recursive|--recurse-submodules] [--]<repository>
[<directory>]


<repository>

    The (possibly remote) repository to clone from.
    See the URLS section below for more information on specifying repositories.
<directory>

    The name of a new directory to clone into.
    The "humanish" part of the source repository is used if no directory 
    is explicitly given (repo for /path/to/repo.git and foo for host.xz:foo/.git).
    Cloning into an existing directory is only allowed if the directory is empty.

0

Pencerelerde git-bash kullanıyorum. En basit yolu, eğik çizgi için yol adresini değiştirmek:

git clone C:/Dev/proposed 

Not: Hedef klasördeki git-bash'ı başlatın.

Klonda kullanılan yol ---> c: / Dev / önerilen

Windows'ta orijinal yol ---> c: \ Dev \ önerilen


0

Yolun kendisi benim için işe yaramadı.

Sonunda MacOS'ta benim için neyin işe yaradığı:

cd ~/projects
git clone file:///Users/me/projects/myawesomerepo myawesomerepocopy

Bu da işe yaradı:

git clone file://localhost/Users/me/projects/myawesomerepo myawesomerepocopy

Ben bunu yaptıysanız yolun kendisi çalıştı:

git clone --local myawesomerepo myawesomerepocopy

Evet, OP örneği Windows, ancak soru Windows olarak etiketlenmedi, bu yüzden Mac kullanıcılarına yardım etme umuduyla
kris larson
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.