SVN 提交未更新服务器上的文件

SVN 提交未更新服务器上的文件

我已经遵循本指南http://wiki.centos.org/HowTos/Subversion并且一切都已运行至 5.3(我可以检查文件)。

我有一个现有目录“/var/www/file-manager”。此目录映射到虚拟主机(即,这是我可以通过 URL 访问的实时网站)。我将此目录添加到 SVN(使用服务器命令行)。

svn import /var/www/file-manager file:///var/www/svn/repos/mytestproj -m "Initial repository layout for mytestproj"

我使用 tortoise SVN 成功检出了整个目录(我使用了“http://svn.example.com/repos“获取文件)。我修改了一个 php 文件,然后使用提交选项将其提交回去。这更新了修订号,似乎已经起作用了。我去了 /var/www/file-manager 并打开了我刚刚修改的文件,但没有看到更改。根据 tortoise 的说法,该文件与服务器是最新的,但服务器上的文件却不是。有人知道这里发生了什么吗?

我最终想将其用于整个网站(它要大得多),所以我想在执行此操作之前找出问题所在。在我安装 SVN 之前,此目录就存在了

答案1

不会svn import将您导入的文件夹转换为工作副本。您需要再次签出/var/www/file-manager,然后svn update对其进行检查,以便查看来自其他提交的更改。

Subversion 不会自动更新其他工作副本。您需要手动更新这些工作副本才能查看所做的更改。

这很大程度上是设计使然。你不希望每次你不小心提交了有严重错误的代码后,你的生产系统都会被更新。

此外,如果您要从 SVN 工作副本托管您的网站,您需要添加.htaccess规则,禁止访问者浏览文件夹.svn。或者,更好的是,不要从工作副本运行您的网站。有一个包含工作副本的更新脚本别的地方svn update对其进行复制,然后svn export从工作副本复制到您的实时网站。

相关内容