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