“无法检出单个文件。您可以在目录级别进行最精细的检查。”
使用Subversion时如何解决此问题?
我们在Subversion中有这个文件夹,我们保存所有图像。 我只想查看一个文件(图像)。 这个文件夹真的很大,还有很多我现在不需要的东西。
#1楼
做这样的事情:
mkdir <your directory>/repos/test
svn cat http://svn.red-bean.com/repos/test/readme.txt > <your directory>/repos/test/readme.txt
基本上这个想法是创建你想从SVN获取文件的目录。 使用svn cat
命令并将输出重定向到同一命名文件。 默认情况下,cat会在stdio上转储信息。
#2楼
使用稀疏检出技术,您可以检查已经检出或存在的特定文件......使用简单的技巧:
在使用“仅此项目”选项检出存储库顶层之后,在Windows资源管理器中,您必须首先右键单击需要更新的文件; 在上下文菜单中选择Repo Browser; 在存储库浏览器中找到该文件AGAIN,然后单击鼠标右键。 您现在应该在上下文菜单中看到“更新项目到修订”。
我不确定它是一个无证的功能还是一个bug。 下班后我花了很长时间才终于找到了这个伎俩。 我正在使用TortoiseSVN 1.6.2。
#3楼
使用svn cat
或svn export
。
为此,您不需要获取工作目录,但您将无法提交您所做的任何更改。 如果您需要进行更改并提交它们,则需要一个工作目录,但不必完全获取它。 检查目录仍然/几乎为空的修订版,然后使用'svn cat'从HEAD中提取文件。
#4楼
尝试svn export
而不是svn checkout
。 这适用于单个文件。
限制的原因是checkout
创建了一个工作副本,其中包含有关存储库,修订版,属性等的元信息。元数据存储在名为“.svn”的子目录中。 单个文件没有子目录。
#5楼
如果要查看存储库中的readme.txt而不检查它:
$ svn cat http://svn.red-bean.com/repos/test/readme.txt
这是一个README文件。 你应该读这个。提示:如果您的工作副本已过期(或者您有本地修改),并且您希望在工作副本中看到文件的HEAD修订版,则当您为其指定路径时,svn cat将自动获取HEAD修订版:
$ cat foo.c
此文件位于我的本地工作副本中,并且已进行了更改。$ svn cat foo.c
来自存储库的最新修订!
来源:oschina
链接:https://my.oschina.net/stackoom/blog/3207241