Checkout one file from Subversion

2019-01-01 09:54发布

"It is not possible to check out a single file. The finest level of checkouts you can do is at the directory level."

How do I get around this issue when using Subversion?

We have this folder in Subversion where we keep all our images. I just want to check out one file (image) from that. This folder is really big and has ton of other stuff which I don't need now.

19条回答
临风纵饮
2楼-- · 2019-01-01 10:05

If you just want a file without revision information use

svn export <URL>
查看更多
怪性笑人.
3楼-- · 2019-01-01 10:10

If you want to view readme.txt in your repository without checking it out:

$ svn cat http://svn.red-bean.com/repos/test/readme.txt
This is a README file. You should read this.

Tip: If your working copy is out of date (or you have local modifications) and you want to see the HEAD revision of a file in your working copy, svn cat will automatically fetch the HEAD revision when you give it a path:

$ cat foo.c
This file is in my local working copy and has changes that I've made.

$ svn cat foo.c
Latest revision fresh from the repository!

Source

查看更多
长期被迫恋爱
4楼-- · 2019-01-01 10:13

Since none of the other answers worked for me I did it using this hack:

$ cd /yourfolder
svn co https://path-to-folder-which-has-your-files/ --depth files

This will create a new local folder which has only the files from the remote path. Then you can do a symbolic link to the files you want to have here.

查看更多
旧人旧事旧时光
5楼-- · 2019-01-01 10:15

Use svn cat or svn export.

For that, you don't need to fetch the working directory, but you will not be able to commit any changes you make. If you need to make changes and commit them, you need a working directory, but you don't have to fetch it completely. Checkout the revision where the directory was still/almost empty, and then use 'svn cat' to extract the file from HEAD.

查看更多
听够珍惜
6楼-- · 2019-01-01 10:15

Steve Jessop's answer did not work for me. I read the help files for SVN and if you just have an image you probably don't want to check it in again unless you're doing Photoshop, so export is a better command than checkout as it's unversioned (but that is minor).

And the --depth ARG should not be empty but files to get the files in the immediate directory. So you'll get all the fields, not just the one, but empty returns nothing from the repository.

 svn co --depth files <source> <local dest>

or

svn export --depth files <source> <local dest>

As for the other answers, cat lets you read the content which is good only for text, not images of all things.

查看更多
步步皆殇っ
7楼-- · 2019-01-01 10:17

With Subversion 1.5, it becomes possible to check out (all) the files of a directory without checking out any subdirectories (the various --depth flags). Not quite what you asked for, but a form of "less than all."

查看更多
登录 后发表回答