http://www.letuknowit.com/archives/svn-checkout-single-file/
有时候需要在svn版本仓库中某个比较上层的目录中(比如根目录)checkout某一个文件,例如下面的svn版本仓库中,我们需要checkout名为readme.txt的文件,而其他的几个文件夹中都有很多内容,如果我们直接checkout根目录的所有内容,肯定是不合算的。
$ svn list file:///usr/local/svn/calc/ branches/ tags/ trunk/ readme.txt
好了,你肯定想到了,我直接checkout这个文件就是,那么就试试下面的指令吧
$ svn co file:///usr/local/svn/calc/readme.txt svn: URL 'file:///usr/local/svn/calc/readme.txt' refers to a file, not a directory
你将会得到一个“URL XXX refers to a file, not a directory”错误,这是因为checkout指令只能针对文件夹。
正确的做法应该是这样
$ svn co --depth=empty file:///usr/local/svn/calc calc_new $ cd calc_new $ svn up readme.txt
其中,calc_new为checkout后的文件夹名,自己可以随意指定,执行svn co命令后,会得到一个名为calc_new的空目录,里面什么都没有,而实现这一效果的就是参数中指定的depth=empty。
下一步就是进入刚刚checkout下来的calc_new目录,执行update操作,想取哪个文件就checkout哪个文件就好了。
原创文章请注明转载于知蚁博客,本文地址:http://www.letuknowit.com/archives/svn-checkout-single-file