开发者

Clone contents of a GitHub repository (without the folder itself)

I'd like to git clone the contents of a repository I hav开发者_如何学Goe on GitHub. When I git clone (git@github:me/name.git...) I get a folder called name/ and inside name I have my contents... How do I get JUST the contents?


If the current directory is empty, you can do that with:

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

(Note the . at the end to specify the current directory.) Of course, this also creates the .git directory in your current folder, not just the source code from your project.

This optional [directory] parameter is documented in the git clone manual page, which points out that cloning into an existing directory is only allowed if that directory is empty.


Unfortunately, this doesn't work if there are other, non-related directories already in the same dir. Looking for a solution. The error message is: "fatal: destination path '.' already exists...".

The solution in this case is:

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

This recipe works even if there are other directories in the one you want to checkout in.


If the folder is not empty, a slightly modified version of @JohnLittle's answer worked for me:

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

As @peter-cordes pointed out, the only difference is using https protocol instead of git, for which you need to have SSH keys configured.


You can specify the destination directory as second parameter of the git clone command, so you can do:

git clone <remote> .

This will clone the repository directly in the current local directory.


to clone git repo into the current and empty folder (no git init) and if you do not use ssh:

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


this worker for me

git clone <repository> .


I know this question is old but please notice that git pull will abort if there is local files that matches the remote one, a solution for that would be to make a reset after pulling like this:

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

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜