git从另一个目录克隆


155

我正在尝试从另一个目录克隆回购。

可以说我有一个回购C:/folder1C:/folder2

我想将工作克隆folder1到中folder2

为此,我将在命令提示符下键入什么?

似乎经常提供克隆URL而不是提供文件路径,但是,这时我只是在练习并尝试使用Git。


4
您可以使用git clone C:\folder1\.git folder2。您需要从您希望文件夹2出现在目录中运行它
阿卡什阿格拉瓦尔

如果您在Windows中,但仍无法正常工作,则可能需要在存储库路径前添加`file:\`。看到这个stackoverflow.com/questions/37422428/...
雅各布^ h

Answers:


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

文档中git clone

对于本地存储库(也由git本地支持),可以使用以下语法:

/path/to/repo.git/

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

这两种语法几乎是等效的,除了前者暗含--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


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

我在Windows中使用git-bash,最简单的方法是更改​​路径地址以使用正斜杠:

git clone C:/Dev/proposed 

PS:在目标文件夹上启动git-bash。

克隆中使用的路径---> c:/ Dev / proposed

Windows中的原始路径---> 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,因此我发布了希望对Mac用户有所帮助的信息
kris larson
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.