[英]svn checkout and update without the .svn directory
我在svn下有一个网站,我想用实际存储库中的内容修补实时网站(即在实时网站上有效地调用svn更新),但我不想在生产网站上的每个文件夹中使用.svn目录。
有没有办法设置svn,以便具有版本信息的.svn文件夹与版本控制下的文件不在同一目录中?
在git中,您可以创建和分离工作树并以这种方式将更新推送到项目(根据http://toroid.org/ams/git-website-howto ),我基本上希望能够在svn中执行类似的操作。
svn export
与checkout
类似,但没有.svn
目录。 但是,您无法update
此类结构,因为它不是svn工作副本。
您还可以将Web服务器配置为禁止访问.svn
目录,并使用checkout + update方法。
如何配置rsync不复制“.svn”目录?
rsync --exclude=.svn local_svn_copy webserver:site/
可以重新运行以刷新Web服务器的副本。
httpd.conf中:
<Directory ~ "\.svn">
Order allow,deny
Deny from all
</Directory>
正如laalto所提到的, svn export
为重复使用时更新“工作副本”提供了一种简单但不是非常有效的方法:
milen@dev:~$ svn export --non-interactive --force "<URL>" <directory>
您还可以使用git-svn
创建网站的git镜像,然后发布您链接的文章中描述的方式。 显然,这不是一个直接的解决方案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.