为网站创建一个subversion存储库

时间:2010-09-24 02:34:53

标签: svn web repository

创建网站存储库的最佳做法是什么?存储库是否存在,并且不需要从存储库中移动文件?或者您是否需要将文件从服务器存储库移动到Web服务器?

4 个答案:

答案 0 :(得分:5)

从不,对抗实时服务器文件。

始终从本地副本检入和退出源代码管理,并准备部署包以上载到您的服务器。

答案 1 :(得分:1)

Randolpho当然是正确的,你不想反对实时服务器文件。

你有一个源控制系统,这样做的目的是让你可以跟踪谁改变了什么,所以如果你需要你可以改变它,并知道谁会大吼大叫搞砸它。

您有网络服务器来提供您的内容。

您有一个部署过程,即从Web服务器上安装源代码控制的内容。理想情况下,这不是手动过程。理想情况下,您希望在此处实现的是,当您要部署到Web服务器时,在命令行上键入几个单词并

1)内容从源代码控制中提取

2)验证内容是否全部存在并且将按照您的预期进行

3)将内容移动到Web服务器,重新启动需要重新启动的任何内容

4)进行测试以确保Web服务器已启动,并且其所服务的内容是您希望它所服务的内容。

自动化是一件很棒的事情。

答案 2 :(得分:0)

  1. 将您的网络根目录导入到svn
  2. 删除您的webroot
  3. 'checkout'到您的webroot的svn。
  4. 在此之后,您可以在webroot中简单地“提交”以提交更改。

    http://aymanh.com/subversion-a-quick-tutorial

    http://www.abbeyworkshop.com/howto/misc/svn01/

答案 3 :(得分:0)

您的网络服务器可以提供来自Subversion结帐的网页,主要是使用svn作为部署工具。

首先像往常一样设置Subversion存储库。只是通常的公共存储库布局至少包含trunk和标签。您可能已经拥有现有存储库。进行开发并检查您的网站代码。为第一个版本创建标记。

然后在Web服务器上,查看相应版本的副本。例如,cd /path/to/web/root/folder && svn co path_to_repository/tags/1.0 .

假设您更新了自己的网站并检查了更改。当更新准备好上线时,再次为其创建标记。在Web服务器上,通过执行以下操作切换到新版本cd /path/to/web/root/folder && svn sw path_to_repository/tags/1.1

请注意,这当然会使用.svn目录丢弃您的Web根目录。这可能是也可能不是问题,具体取决于您正在部署的内容。对于我的网站来说,这绝不是问题(我确保它们通过.htaccess得到保护)。

我们的想法是您在开发机器上进行开发,并且只有在新标签准备就绪并且您已准备好将Web服务器切换到新版本后才登录到Web服务器。