克隆GitHub存储库的内容(不包含文件夹本身)

我想git clone我在GitHub上的存储库的内容。当我git clone (git@github:me/name.git…)我得到一个名为name/的文件夹,其中包含我的内容。我如何得到只是内容?

164938 次浏览

如果当前目录是空的,你可以这样做:

git clone git@github.com:me/name.git .

(注意结尾的.指定当前目录。)当然,这也会在当前文件夹中创建.git目录,而不仅仅是项目的源代码。

这个可选的[directory]参数记录在git clone手册页中,它指出只有在现有目录为空时才允许克隆到该目录。

你可以将目标目录指定为git clone命令的第二个参数,所以你可以这样做:

git clone <remote> .

这将直接在当前本地目录中克隆存储库。

不幸的是,如果在相同的目录中已经有其他不相关的目录,这将不起作用。寻找解决方案。错误信息是:"fatal: destination path '。“已经存在……”。

这种情况下的解决方案是:

git init
git remote add origin git@github.com:me/name.git
git pull origin master

即使在您想签入的目录中还有其他目录,此菜谱也可以工作。

如果这个文件夹不是空的,那么稍微修改一下@JohnLittle的回答就可以了:

git init
git remote add origin https://github.com/me/name.git
git pull origin master

正如@peter-cordes指出的那样,唯一的区别是使用https协议而不是git,为此你需要有配置SSH密钥

这是我的工人

git clone <repository> .

将git repo复制到当前的文件夹中(没有git init),如果你不使用ssh:

git clone https://github.com/accountName/repoName.git .

我知道这个问题很老了,但请注意,如果有本地文件与远程文件匹配,git pull将中止,解决方案是在像这样拉取后进行重置:

git init
git remote add origin REMOTE_REPO_URL.git
git pull origin master
git reset --hard FETCH_HEAD