我想git克隆我在GitHub上的存储库的内容。当我git克隆(git@github:me/name.git…)我得到一个名为name/的文件夹,在name里面有我的内容…我如何得到只是内容?


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

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

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

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


你可以指定目标目录作为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拉取将会中止,解决方案是在拉取后进行重置,就像这样:

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