別のディレクトリからのgit clone


156

別のディレクトリからリポジトリを複製しようとしています。

1つのリポジトリがC:/folder1あり、C:/folder2

私は仕事でのクローンを作成するfolder1folder2

これを行うには、コマンドプロンプトに何を入力しますか?

ファイルのパスではなく、URLのクローンが提供される場合が多いようですが、現時点では、Gitを練習して利用しようとしているだけです。


4
使用できますgit clone C:\folder1\.git folder2。folder2を表示するディレクトリから実行する必要があります
Akash Agrawal

Windowsを使用していても機能しない場合は、リポジトリパスの先頭に「file:\」を追加する必要がある場合があります。このstackoverflow.com/questions/37422428/…を
Jacob H

回答:


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

ドキュメントからgit clone

ローカルリポジトリの場合、これもgitによってネイティブにサポートされており、次の構文を使用できます。

/path/to/repo.git/

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

これら2つの構文は、前者が--localオプションを意味することを除いて、ほとんど同じです。


4
@grahamesd、本当にあなたが原因GITのドライブとしてネットワークフォルダをマッピングする必要はありません、このような方法で、そのかなり良いのクローンを作成することができますgit clone //pc_name/git
vladimir_ki

18

これらのどれも私にとってはうまくいきませんでした。Windowsでgit-bashを使用しています。私のファイルパスのフォーマットに問題があることがわかりました。

違う:

git clone F:\DEV\MY_REPO\.git

正しい:

git clone /F/DEV/MY_REPO/.git

これらのコマンドは、repoフォルダーを表示するフォルダーから実行されます。


次のコマンドはbashで機能します。git clone F:\ DEV \ MY_REPO
M.Hassan

git-bashの場合、バックスラッシュ/またはダブルスラッシュ `\\`を使用できます。しかし、単一のスラッシュはありません。
Elad Weiss

15

このコマンドはLinuxでも同様に機能することに言及する価値があります。

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

7

見た目と同じくらい簡単です。

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

パスにスペースがある場合は、二重引用符で囲みます。

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

3

使用する 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

私はウィンドウでgit-bashを使用しています。最も簡単な方法は、パスアドレスをスラッシュに変更することです。

git clone C:/Dev/proposed 

PS:宛先フォルダーでgit-bashを開始します。

クローンで使用されるパス---> c:/ Dev / proposed

ウィンドウの元のパス---> c:\ Dev \ proposed


0

パス自体を使用してもうまくいきませんでした。

MacOSで私にとって最終的に機能したのは次のとおりです。

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

これも機能しました:

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

私がこれをした場合、パス自体は機能しました:

git clone --local myawesomerepo myawesomerepocopy

はい、OPの例はWindowsですが、質問にはWindowsのタグが
付いて
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.