SVN - 如何仅导出修订版

时间:2010-12-11 02:20:10

标签: linux svn apache webdav

我在我用于开发的本地计算机(Ubuntu)上有SVN设置,在我使用登台服务器的共享主机盒上运行的SVN客户端,我的生产服务器也有相同的设置。当我进行导出时,整个项目将被导出,这对于小版本发布来说是荒谬的。我使用以下命令:

svn export -r 31 http://localhost.com/proj/trunk . --force --username myusername

整个项目再次出口。所以我尝试了另一种方式:

svn export -r 'COMMITTED' http://localhost.com/proj/trunk . --force --username myusername

然后我收到此错误:

svn: 'http://localhost.com/egr' is not a working copy
svn: Can't open file 'http://localhost.com/proj/.svn/entries': No such file or directory

我想知道我是不是使用了正确的SVN导出命令,或者我的SVN设置是否存在固有错误(这是我第一次配置SVN)。

dav_svn.conf:

  <Location /proj>
 DAV svn
 SVNPath /var/svn/proj/
 AuthType Basic
 AuthName "SVN Repo"
 AuthUserFile /etc/subversion/passwd
 <LimitExcept GET PROPFIND OPTIONS REPORT>
    Require valid-user
 </LimitExcept>

想法?请指教。

2 个答案:

答案 0 :(得分:12)

您可以指定仅要导出的文件夹/文件,例如

例如使用wp svn

svn export -r 16873 http://core.svn.wordpress.org/branches/2.8/wp-admin/css

如果只是几个文件但位于不同的目录

mkdir {css,image}
svn export -r 16873 http://core.svn.wordpress.org/branches/2.8/wp-admin/css/install.css css/install.css
svn export -r 16873 http://core.svn.wordpress.org/branches/2.8/wp-admin/images/menu-arrows.gif images/menu-arrows.gif

答案 1 :(得分:1)

如果要更新项目,则不应使用svn export,应使用svn commit将工作副本中的更改发送到存储库。

我想知道你为什么使用-r 31选项代表修订版本以及它们的数量为31.可能你要调用的选项是-R选项,它代表递归目录。