Exact `svn export` equivalent command for git?
There is no exact svn export
equivalent command for git? Really?
Beware: this is not a duplicate question. That is, I already know and have tested these commands:
git clone --depth 1
<- Still downloads the .git folder. git checkout-init
<- Doesn't work for a remote repo, it works with a working copy (so you need to clone first). git archive
<- This would be the perfect solution, because it has a --remote
argument, but it only has 2 possible formats: tar or zip, so I would need to untar/unzip after downloading, and for that I need a pipe (|), but I'm on windows!! (not *n?x) git clone --bare
<- I still don't know what the heck this is, but it's not what I need. Please enlighten me is there a real svn export
replacement in git?
At some hostings like GitHub you can make exact svn export
.
Example:
svn export https://github.com/GNOME/banshee/branches/master
Even partial! (some subpart of the repository)
Example:
svn export https://github.com/liferay/liferay-portal/branches/6.1.x/tools
For your own repository you should create some GitHub repository and add it as a remote:
git remote add github https://github.com/<user>/<repo>.git
then
git push github <branch>
Now you able to do a partial checkout as above.
From How do I do a quick clone without history revisions?:
git clone --depth 1 your_repo_url
Then, from the rmdir documentation:
rd /s /q .git
The question "how can I do a svn-style 'export' with git?" is like asking "How can I change the tires on my basketball?". You can't, but that's not the basketball's fault. Yes it is rubber and full of air, but the similarity ends there.
You only need "export" with svn because it pollutes every single subdirectory with a .svn directory. Git doesn't do that, so you really don't need it. A clone IS an export, just with one directory at the root dir that all the repository business lives in.
The easiest thing is to clone the repo and then just delete the .git directory from the top level of the repo. Do that, and it's not a repo anymore, it's just a stand-alone directory of files.
Or, you know, ignore git all together and just use the files you cloned down. That works too.
链接地址: http://www.djcxy.com/p/26276.html上一篇: 下载Git回购没有所有.git的东西?