【发布时间】:2009-04-10 15:51:55
【问题描述】:
不久前我问过link text,我得到了一些很好的答案。我想知道是否有办法将文件保存在我的 Web 应用程序文档根目录下,当我进行更改时,将它们提交回存储库。
据我了解,为了处理文件,它们不能位于网络根目录中。不得不将它们移到其他地方只是为了处理它们对我来说似乎违反直觉。我错过了什么吗?
谢谢!
【问题讨论】:
不久前我问过link text,我得到了一些很好的答案。我想知道是否有办法将文件保存在我的 Web 应用程序文档根目录下,当我进行更改时,将它们提交回存储库。
据我了解,为了处理文件,它们不能位于网络根目录中。不得不将它们移到其他地方只是为了处理它们对我来说似乎违反直觉。我错过了什么吗?
谢谢!
【问题讨论】:
只需将 svn 存储库检出到一个目录并将该目录设置为 Web 根目录。您将需要一个不会为 .svn 目录提供服务的 apache 策略,但除此之外没有问题。
这是我在 httpd.conf 中用来保护 svn 目录的内容:
#Protect svn directories<DirectoryMatch "^/.*/(\.svn|CVS)/">
Order deny,allow
Deny from all</DirectoryMatch>
【讨论】:
为了处理文件,它们不能位于网络根目录中
这是没有道理的。也许您正在考虑这样一个事实,即可以由网络服务器修改/编辑的文件 不应该位于文档根目录下。但只要您不使用服务器本身进行编辑(例如,如果您创建了某种文本编辑器 Web 应用程序就会出现这种情况),那么在文档根目录。
您可能对我的设置感兴趣:我的存储库将我的网站保存在与我的 Web 服务器相同的物理机器上。一个工作副本被签出到该机器上的 Web 根目录中,我在笔记本电脑上签出了另一个工作副本,我在那里进行开发和测试。现在有趣的部分是:我在 SVN 存储库中添加了一个钩子,这样每次将任何内容提交到存储库时,它都会自动更新 Web 根目录中的工作副本。这样,Web 根目录始终拥有最新版本的网站代码,但我仍然可以在网站上工作而无需访问服务器。
编辑:这里是the script
【讨论】: