我正在执行 svn update 来更新我的 php 网站的代码,但是它却.svn/
在各处留下了文件夹。
我认为让这些文件公开可读是危险的,但更新系统非常容易。
有没有办法可以用来svn update
更新系统,但不导出.svn/
文件夹?
答案1
如果你正在使用 Apache:
<Directory ~ "\.svn">
Order allow,deny
Deny from all
</Directory>
这将阻止人们.svn
远程访问目录(使用浏览器),但您可以将其(和 svn 功能)保留在项目中。
顺便说一句,你可以用 subversion\.svn
来替代\.git
,或者\.cvs
如果你使用与 subversion 不同的东西。
答案2
你应该更改 apache 配置,以便它拒绝访问 .svn 文件夹。此线程有更多信息https://stackoverflow.com/questions/398008/deny-access-to-svn-folders-on-apache
答案3
您想要将代码从 SVN 导出到实时网站...
不要svn update
为此使用。更新用于更新工作副本,而不是导出代码。请使用svn export
它,因为它会从指定的存储库导出干净的目录树。
该--force
标志将允许导出覆盖现有文件。
答案4
您应该研究适当的部署系统,例如卡皮斯特拉诺。这意味着您的生产服务器不需要 subversion,您可以部署到多台服务器并向部署中添加自定义逻辑。这也使得回滚部署变得相对容易。