Svn 为网站创建subversion存储库

Svn 为网站创建subversion存储库,svn,web,repository,Svn,Web,Repository,创建网站存储库的最佳实践是什么?存储库是否在上处于活动状态,并且不需要从repo移动文件?还是需要将文件从服务器存储库移动到web服务器 将web根目录“导入”到svn 删除您的webroot 将svn“签出”到您的webroot 在此之后,您只需在webroot中“提交”即可提交更改 永远不要使用实时服务器文件 始终从本地副本签入和签出源代码管理,并准备一个部署包以上载到服务器 您的web服务器可以为来自Subversion签出的页面提供服务,基本上使用svn作为部署工具 首先像往常一样设置

创建网站存储库的最佳实践是什么?存储库是否在上处于活动状态,并且不需要从repo移动文件?还是需要将文件从服务器存储库移动到web服务器

  • 将web根目录“导入”到svn
  • 删除您的webroot
  • 将svn“签出”到您的webroot
  • 在此之后,您只需在webroot中“提交”即可提交更改

    永远不要使用实时服务器文件


    始终从本地副本签入和签出源代码管理,并准备一个部署包以上载到服务器

    您的web服务器可以为来自Subversion签出的页面提供服务,基本上使用svn作为部署工具

    首先像往常一样设置Subversion存储库。只是通常的、通用的存储库布局,至少有主干和标记。您可能已经有一个现有的存储库。进行开发并签入网站代码。为第一个版本创建标记

    然后在web服务器上,签出相应版本的副本。例如,
    cd/path/to/web/root/folder&&svn-co-path\u-to\u-repository/tags/1.0。

    假设您更新了站点并签入了更改。当更新准备上线时,再次为其创建一个标记。在web服务器上,通过执行以下操作切换到新版本:例如
    cd/path/to/web/root/folder&&svn sw path\u to\u repository/tags/1.1

    请注意,这当然会将
    .svn
    目录丢弃到您的web根目录中。这可能是问题,也可能不是问题,这取决于您正在部署的内容。对于我的站点,这从来都不是问题(我确保它们通过.htaccess得到保护)


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

    Randolpho是正确的,当然,您不想使用实时服务器文件

    你有一个源代码控制系统,它的目的是让你可以跟踪谁在什么时候改变了什么,这样你就可以在需要的时候重新改变它,并且知道谁会因为把事情搞砸而大喊大叫

    您有web服务器为您的内容提供服务

    您有一个部署过程,即从安装在web服务器上的源代码管理获取内容的过程。理想情况下,这不是一个手动过程。理想情况下,您希望在这里实现的是,当您想要部署到web服务器时,您可以在命令行上键入几个单词,然后

    1) 内容来自源代码管理

    2) 经过验证,内容已经全部存在,并且将按照您的期望进行操作

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

    4) 进行测试以确保web服务器已启动,并且它提供的内容是您期望它提供的内容


    自动化是一件美妙的事情。

    这将留下
    .svn
    管理目录(read)可供世界访问。为什么不能更改此目录的权限,以便运行apache http server的用户/组没有访问权限,但服务器管理员或程序员有访问权限?您可能希望使用适当的.htaccess文件对公众隐藏这些.svn目录。看起来像是以下目录的副本: